.file-action-dialog{position:fixed;z-index:85;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;font-family:Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;color:var(--ink)}.file-action-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:default;background:#02020280}.file-action-surface{position:relative;width:min(720px,calc(100vw - 40px));max-height:calc(100vh - 40px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:var(--white);border-radius:var(--radius-panel);box-shadow:0 8px 16px #1f1f1f29;animation:file-action-in .2s var(--ease) both}@keyframes file-action-in{0%{opacity:0;transform:translateY(8px)}}.file-action-header{min-height:72px;display:grid;grid-template-columns:34px minmax(0,1fr) 32px;align-items:center;gap:12px;padding:12px 18px}.file-action-heading-icon{width:34px;height:34px;display:grid;place-items:center;color:var(--muted);background:var(--surface);border-radius:var(--radius-control)}.file-action-header h2,.file-action-header p,.file-action-section h3,.file-action-result-summary h3,.file-action-result-summary p,.file-action-more,.file-action-error,.file-action-empty-preview{margin:0}.file-action-header h2{font-size:var(--type-section);font-weight:500;line-height:1.3}.file-action-header p{margin-top:2px;color:var(--muted);font-size:var(--type-caption);line-height:1.45}.file-action-close{width:32px;height:32px;display:grid;place-items:center;color:var(--muted);border-radius:5px;transition:color .15s var(--ease),background .15s var(--ease),transform .15s var(--ease)}.file-action-close:hover:not(:disabled){color:var(--ink);background:var(--surface)}.file-action-close:active:not(:disabled){transform:translateY(1px)}.file-action-body{min-height:0;overflow-y:auto;padding:18px 24px 28px;border-top:1px solid var(--divider)}.file-action-section+.file-action-section{margin-top:24px}.file-action-section-heading{min-height:22px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.file-action-section h3{font-size:var(--type-body);font-weight:500;line-height:1.45}.file-action-section-heading>span{color:var(--muted);font-size:var(--type-caption);line-height:1.4;text-align:right}.file-action-segmented{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;padding:2px;background:var(--surface);border-radius:4px}.file-action-segmented button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;color:var(--muted);border-radius:3px;font-size:var(--type-body);transition:color .15s var(--ease),background .15s var(--ease),box-shadow .15s var(--ease)}.file-action-segmented button:hover:not(:disabled){color:var(--ink)}.file-action-segmented button.is-active{color:var(--ink);background:var(--white);box-shadow:0 1px 3px #1f1f1f14}.file-action-field{display:flex;flex-direction:column;gap:7px;margin-top:12px}.file-action-field>span{font-size:var(--type-body);font-weight:500;line-height:1.4}.file-action-field>span small{margin-left:5px;color:var(--faint);font-size:var(--type-caption);font-weight:400}.file-action-field input,.file-action-field select{width:100%;height:38px;padding:0 10px;border:0;color:var(--ink);background:var(--surface);border-radius:4px;font-size:var(--type-body);transition:background .15s var(--ease),box-shadow .15s var(--ease)}.file-action-field select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.file-action-field input::placeholder{color:var(--input-placeholder);font-weight:400}.file-action-field input:focus,.file-action-field select:focus{background:var(--white);box-shadow:0 0 0 2px var(--surface-2)}.file-action-field input:focus-visible,.file-action-field select:focus-visible,.file-action-conflict-control select:focus-visible{outline:none}.file-action-field small{color:var(--faint);font-size:var(--type-caption);line-height:1.45}.file-action-suggestion{display:flex;flex-direction:column;gap:7px;margin-top:14px}.file-action-suggestion-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.file-action-suggestion-copy>span{font-size:var(--type-body);font-weight:500;line-height:1.4}.file-action-suggestion-copy>small{color:var(--faint);font-size:var(--type-caption);line-height:1.4}.file-action-suggestion-value{min-width:0;min-height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 7px 7px 10px;color:var(--ink);background:var(--surface);border-radius:4px}.file-action-suggestion-value output{min-width:0;display:block;font-size:var(--type-body);font-weight:400;line-height:1.45;overflow-wrap:anywhere}.file-action-suggestion-value button{flex:0 0 auto;min-width:76px;min-height:30px;padding:0 9px;color:var(--ink);background:var(--white);border-radius:3px;box-shadow:0 1px 3px #1f1f1f12;font-size:var(--type-caption);font-weight:500;white-space:nowrap;transition:background .15s var(--ease),box-shadow .15s var(--ease),transform .15s var(--ease)}.file-action-suggestion-value button:hover:not(:disabled){background:var(--surface-2);box-shadow:0 2px 6px #1f1f1f14}.file-action-suggestion-value button:active:not(:disabled){transform:translateY(1px)}.file-action-form-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12px}.file-action-form-grid .file-action-field{margin-top:0}.file-action-template-builder{margin-top:14px}.file-action-template-builder>.file-action-field{margin-top:0}.file-action-template-composer{margin-top:16px}.file-action-template-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:var(--type-body);font-weight:500}.file-action-template-label small{color:var(--faint);font-size:var(--type-caption);font-weight:400}.file-action-selected-tokens{min-height:50px;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:8px;background:var(--surface);border-radius:5px}.file-action-selected-tokens.is-empty{justify-content:center}.file-action-template-empty{color:var(--input-placeholder);font-size:var(--type-body)}.file-action-selected-token{min-height:32px;display:inline-flex;align-items:center;gap:7px;padding:0 4px 0 10px;color:var(--ink);background:var(--white);border-radius:999px;box-shadow:0 1px 3px #1f1f1f14;font-size:var(--type-caption)}.file-action-selected-token>span{display:inline-flex;align-items:baseline;gap:5px}.file-action-selected-token small{color:var(--muted);font-size:inherit;font-variant-numeric:tabular-nums}.file-action-selected-token button{width:24px;height:24px;display:grid;place-items:center;color:var(--muted);border-radius:50%;transition:color .15s var(--ease),background .15s var(--ease)}.file-action-selected-token button:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.file-action-token-catalog{margin-top:13px}.file-action-token-catalog>span{color:var(--muted);font-size:var(--type-caption)}.file-action-token-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.file-action-token-list button{min-height:30px;display:inline-flex;align-items:center;gap:5px;padding:0 9px;color:var(--muted);background:var(--surface);border-radius:999px;font-size:var(--type-caption);transition:color .15s var(--ease),background .15s var(--ease),opacity .15s var(--ease)}.file-action-token-list button:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.file-action-token-list button:disabled{opacity:.38}.file-action-token-list button small{color:var(--faint);font-size:inherit;font-variant-numeric:tabular-nums}.file-action-template-help{margin:10px 0 0;color:var(--faint);font-size:var(--type-caption);line-height:1.45}.file-action-conflict-control{display:flex;flex-direction:column;align-items:stretch;gap:7px}.file-action-conflict-control>span{font-size:var(--type-body);font-weight:500}.file-action-conflict-control select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:38px;padding:0 40px 0 10px;border:0;color:var(--ink);background-color:var(--surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23777777' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px 14px;border-radius:4px;font-size:var(--type-body)}.file-action-conflict-control select:focus{background-color:var(--white);box-shadow:0 0 0 2px var(--surface-2)}.file-action-conflicts>p{margin:7px 0 0;color:var(--faint);font-size:var(--type-caption);line-height:1.45}.file-action-preview-section{min-height:180px}.rename-preview-list,.organize-preview-list,.file-action-report-list{overflow:hidden;background:var(--surface);border-radius:var(--radius-control)}.rename-preview-row{min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);align-items:center;gap:10px;padding:9px 10px}.rename-preview-row+.rename-preview-row,.organize-preview-row+.organize-preview-row,.file-action-report-row+.file-action-report-row{border-top:1px solid var(--divider)}.rename-preview-row>svg{color:var(--faint)}.rename-preview-row>div,.organize-preview-row>div,.file-action-report-row>div{min-width:0;display:flex;flex-direction:column;gap:2px}.rename-preview-row strong,.organize-preview-row strong,.file-action-report-row strong{overflow:hidden;font-size:var(--type-body);font-weight:400;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.rename-preview-row small,.organize-preview-row small,.file-action-report-row small{overflow:hidden;color:var(--muted);font-size:var(--type-caption);line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.preview-issue,.has-issue .preview-issue{color:var(--error)!important}.organize-preview-row{min-height:54px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px}.organize-preview-row>svg{color:var(--muted)}.organize-preview-row>span{color:var(--muted);font-size:var(--type-caption);font-variant-numeric:tabular-nums;white-space:nowrap}.file-action-empty-preview,.file-action-preview-loading{min-height:150px;display:flex;align-items:center;justify-content:center;gap:7px;padding:20px;color:var(--muted);font-size:var(--type-body);line-height:1.55;text-align:center}.file-action-more{padding:10px;color:var(--muted);font-size:var(--type-caption);line-height:1.45;text-align:center;border-top:1px solid var(--divider)}.file-action-footer{min-height:66px;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 18px;border-top:1px solid var(--divider)}.file-action-scope,.file-action-error{min-width:0;margin-right:auto;color:var(--muted);font-size:var(--type-caption);line-height:1.4}.file-action-scope{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-action-error{display:inline-flex;align-items:center;gap:6px;color:var(--error)}.file-action-primary,.file-action-secondary{height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border-radius:5px;font-size:var(--type-body);transition:color .15s var(--ease),background .15s var(--ease),transform .15s var(--ease)}.file-action-secondary{color:var(--muted);background:var(--surface)}.file-action-secondary:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.file-action-primary{color:var(--white);background:var(--ink)}.file-action-primary:hover:not(:disabled){transform:translateY(-1px);opacity:.9}.file-action-primary:active:not(:disabled){transform:translateY(0)}.file-action-spinner{animation:file-action-spin .85s linear infinite}@keyframes file-action-spin{to{transform:rotate(360deg)}}.file-action-result{min-height:280px}.file-action-result-summary{display:flex;align-items:flex-start;gap:10px;padding:4px 0 22px}.file-action-result-summary>svg{margin-top:1px;color:var(--ink)}.file-action-result-summary.has-failures>svg{color:var(--error)}.file-action-result-summary h3{font-size:var(--type-section);font-weight:500;line-height:1.3}.file-action-result-summary p{margin-top:3px;color:var(--muted);font-size:var(--type-body);line-height:1.5}.file-action-report-row{min-height:50px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px}.file-action-report-row>svg{color:var(--muted)}.file-action-report-row.is-failed>svg{color:var(--error)}.file-action-report-row>span{color:var(--muted);font-size:var(--type-caption);text-transform:capitalize}@media(max-width:640px){.file-action-dialog{align-items:end;padding:0}.file-action-surface{width:100%;max-height:calc(100vh - 24px);border-radius:10px 10px 0 0}.file-action-header{padding-inline:14px}.file-action-body{padding:16px 16px 24px}.file-action-footer{flex-wrap:wrap;padding:10px 14px}.file-action-scope,.file-action-error{flex-basis:100%;margin-right:0}.file-action-primary,.file-action-secondary{flex:1 1 0}.file-action-form-grid{grid-template-columns:1fr;gap:14px}.rename-preview-row{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr);gap:6px}.file-action-section-heading{align-items:flex-start;flex-direction:column;gap:2px}.file-action-section-heading>span{text-align:left}.file-action-conflict-control{gap:7px}}@media(hover:none){.file-action-close{width:44px;height:44px}.file-action-segmented button,.file-action-field input,.file-action-field select,.file-action-suggestion-value button,.file-action-conflict-control select,.file-action-primary,.file-action-secondary,.file-action-token-list button{min-height:44px}.file-action-selected-token button{position:relative}.file-action-selected-token button:before{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;content:"";border-radius:50%}}@media(prefers-reduced-motion:reduce){.file-action-surface{animation-duration:1ms}.file-action-spinner{animation-duration:1.4s}.file-action-close,.file-action-segmented button,.file-action-selected-token button,.file-action-token-list button,.file-action-primary,.file-action-secondary{transition-duration:1ms}}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--folder-glow-angle:0deg}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-1{top:var(--spacing)}.top-3{top:calc(var(--spacing) * 3)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.capitalize{text-transform:capitalize}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@font-face{font-family:Space Grotesk;src:url(/assets/space-grotesk-300-D7TfWp73.ttf)format("truetype");font-style:normal;font-weight:300;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/assets/space-grotesk-500-DnsmCY5X.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/assets/cormorant-garamond-500-italic-B6MJOsWb.ttf)format("truetype");font-style:italic;font-weight:500;font-display:swap}:root{color:#0b0b0b;font-synthesis:none;text-rendering:geometricprecision;--white:oklch(100% 0 0);--ink:oklch(15% 0 0);--muted:oklch(47% 0 0);--faint:oklch(68% 0 0);--surface:oklch(96.5% 0 0);--surface-2:oklch(94% 0 0);--canvas:oklch(97.8% 0 0);--divider:oklch(90% 0 0);--line-soft:oklch(90% 0 0/.62);--canvas-dot:#cecece;--accent:var(--ink);--accent-ink:var(--ink);--accent-soft:var(--surface);--accent-soft-strong:var(--surface-2);--focus:oklch(42% 0 0);--input-placeholder:oklch(54% 0 0);--error:#e8444a;--ease:cubic-bezier(.22, 1, .36, 1);--ease-quiet:cubic-bezier(.4, 0, .2, 1);--glass-surface:oklch(100% 0 0/.82);--shadow-float:0 4px 8px oklch(28% 0 0/.1), inset 0 1px 0 oklch(100% 0 0/.92);--shadow-popover:0 3px 8px oklch(24% 0 0/.12);--shadow-selection:0 0 0 2px var(--ink), 0 4px 8px oklch(24% 0 0/.12);--radius-control:6px;--radius-panel:10px;--nav-height:58px;--gallery-search-full-width:clamp(520px, 34vw, 600px);--inspector-section-gap:36px;--inspector-block-gap:14px;--inspector-control-gap:8px;--inspector-inline-gap:6px;--type-caption:.75rem;--type-body:.875rem;--type-section:1rem;--type-title:2rem;--type-page:clamp(2.5rem, 3vw, 3rem);--page-gutter:clamp(32px, 4vw, 64px);background:#fff;font-family:Helvetica Neue,Helvetica,Arial,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--white);margin:0;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button{background:0 0;border:0}button:disabled{opacity:.38}button,a{outline:none}input,textarea,select{outline-offset:2px;outline:2px solid #0000}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--focus)}.map-search-wrap input:focus-visible,.source-link-control input:focus-visible,.assignment-create input:focus-visible,.technique-edit-fields input:focus-visible,.technique-edit-fields textarea:focus-visible,.optional-note textarea:focus-visible,.gallery-header-search-field input:focus-visible,.gallery-header-search-panel input:focus-visible,.create-collection input:focus-visible,.search-hero input:focus-visible{outline:none}.app-loading{height:100%;font-size:var(--type-body);letter-spacing:-.01em;place-items:center;display:grid}.top-nav{z-index:44;height:var(--nav-height);pointer-events:none;-webkit-user-select:none;user-select:none;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:0 14px;display:grid;position:absolute;top:0;left:0;right:0}.top-left-tools,.top-actions{z-index:35;pointer-events:auto;align-items:center;gap:3px;min-width:0;display:flex;position:relative}.top-left-tools{justify-content:flex-start;justify-self:start}.top-actions{justify-content:flex-end;justify-self:end}.top-center-tools{z-index:35;pointer-events:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gallery-search-positioner{opacity:1;will-change:left,transform,opacity}.gallery-search-positioner.is-position-ready{transition:left .3s var(--ease),transform .3s var(--ease),opacity .24s var(--ease-quiet)}.gallery-search-positioner.is-position-ready.is-handoff-hidden{opacity:0;pointer-events:none;transition:opacity .18s var(--ease-quiet)}.gallery-search-positioner.is-handoff-hidden .gallery-header-search{transition:none}.gallery-search-positioner.is-compact{z-index:46;left:var(--gallery-search-compact-left,0px);transform:translateY(-50%)}.gallery-search-width-probe{width:var(--gallery-search-full-width);visibility:hidden;pointer-events:none;height:0;position:absolute;overflow:hidden}.top-nav.is-library-open .top-left-tools{z-index:43}.top-nav.is-gallery-search-compact .top-left-tools{z-index:46}.top-left-tools>i{background:var(--divider);width:1px;height:18px;margin:0 5px}.top-tool{white-space:nowrap;height:38px;font-size:var(--type-caption);color:var(--muted);transition:color .16s var(--ease),background .18s var(--ease),transform .16s var(--ease);border-radius:8px;align-items:center;gap:7px;padding:0 10px;display:inline-flex}.top-tool:hover,.top-tool.is-active{color:var(--ink);background:var(--white)}.top-tool:active{transform:translateY(1px)}.gallery-header-search{color:var(--muted);transition:width .3s var(--ease),height .3s var(--ease),opacity .18s var(--ease);position:relative}.gallery-header-search.is-full{width:var(--gallery-search-full-width);background:var(--glass-surface);height:46px;box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);border-radius:10px;padding:4px}.gallery-header-search-panel{color:var(--muted);background:var(--glass-surface);box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);border-radius:8px;align-items:center;gap:8px;display:flex}.gallery-header-search-field{width:100%;height:38px;min-height:38px;color:var(--muted);transition:color .16s var(--ease),background .18s var(--ease),box-shadow .18s var(--ease);background:#f0f0f0e0;border-radius:7px;align-items:center;gap:8px;padding:0 10px;display:flex}.gallery-header-search-field:hover{background:var(--white)}.gallery-header-search-field:focus-within{background:var(--white);box-shadow:0 0 0 2px var(--accent-soft-strong)}.gallery-header-search-field>svg,.gallery-header-search-panel>svg{flex:none}.gallery-header-search-field input,.gallery-header-search-panel input{width:100%;min-width:0;height:100%;font-size:var(--type-caption);background:0 0;border:0;padding:0}.gallery-header-search.is-compact{flex:0 0 44px;width:44px;height:44px}.gallery-header-search-trigger{justify-content:center;width:44px;height:44px;padding:0}.gallery-header-search.is-open .gallery-header-search-trigger,.mobile-map-search.is-open .mobile-map-search-trigger{opacity:0;pointer-events:none}.gallery-header-search-panel{z-index:2;top:0;left:var(--header-search-offset-x,0px);width:var(--header-search-expanded-width,300px);height:44px;animation:gallery-header-search-in .24s var(--ease) both;padding:0 11px;position:absolute}.gallery-header-search.is-open{z-index:2}@keyframes gallery-header-search-in{0%{opacity:.9;clip-path:inset(0 calc(100% - var(--header-search-trigger-anchor-x,0px) - 44px) 0 var(--header-search-trigger-anchor-x,0px) round 8px)}to{opacity:1;clip-path:inset(0 round 8px)}}.wordmark{color:#0000;letter-spacing:0;flex:none;align-items:center;font-size:0;display:inline-flex}.wordmark:before,.empty-entry-header span:first-child:before{content:"";background:url(/assets/visualibrary-logo-DTE4-f2d.svg) 50%/contain no-repeat;flex:none;width:120px;height:24px}.library-action{justify-content:center;width:38px;padding:0}.library-action.is-active{background:var(--surface)}.mobile-map-search,.mobile-map-header-tools{display:none}.view-switcher{position:relative}.view-switcher-trigger>svg:last-child{transition:transform .18s var(--ease);margin-left:2px}.view-switcher-trigger>svg:last-child.is-open{transform:rotate(180deg)}.view-switcher-menu{z-index:45;border-radius:var(--radius-panel);background:var(--glass-surface);width:160px;box-shadow:var(--shadow-popover);animation:view-menu-in .17s var(--ease) both;-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);padding:5px;position:absolute;top:calc(100% + 6px);right:0}@keyframes view-menu-in{0%{opacity:0;transform:translateY(-4px)}}.view-switcher-menu button{width:100%;min-height:38px;color:var(--muted);text-align:left;font-size:var(--type-caption);border-radius:5px;grid-template-columns:20px minmax(0,1fr) 7px;align-items:center;gap:7px;padding:0 9px;display:grid}.view-switcher-menu button:hover{color:var(--ink);background:var(--surface)}.view-switcher-menu button.is-active{color:var(--ink)}.view-switcher-menu button>i{background:var(--ink);border-radius:50%;width:5px;height:5px}.library-panel{--library-divider:oklch(30% 0 0/.055);z-index:42;grid-template-rows:var(--nav-height) minmax(0,1fr) auto;isolation:isolate;width:min(320px,100vw);animation:library-in .26s var(--ease) both;-webkit-user-select:none;user-select:none;background:0 0;display:grid;position:fixed;inset:0 auto 0 0;overflow:hidden;box-shadow:4px 0 8px #2929291a,inset 0 1px #ffffffeb}.library-panel:before{z-index:-1;content:"";contain:paint;pointer-events:none;background:var(--glass-surface);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);position:absolute;top:0;right:0;bottom:0;left:0}@keyframes library-in{0%{opacity:0;transform:translate(-14px)}}.library-panel-top-space{height:var(--nav-height)}.library-panel-scroll{padding:0 10px 24px;overflow-y:auto}.library-source{flex-direction:column;gap:3px;min-width:0;padding:13px 11px 14px;display:flex}.library-source strong{color:var(--ink);font-size:var(--type-body);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.library-source span{color:var(--muted);font-size:var(--type-caption)}.library-panel-section{border-top:1px solid var(--library-divider);padding:18px 4px}.library-panel-section.library-destinations{border-top:0;padding-top:10px}.library-section-heading{justify-content:space-between;align-items:flex-start;height:25px;padding:0 7px;display:flex}.library-section-heading>button{color:var(--muted);font-size:var(--type-caption)}.library-section-heading>button:hover{color:var(--ink)}.library-section-label{color:var(--muted);font-size:var(--type-caption);letter-spacing:.01em;padding:0 7px 9px;display:block}.library-section-heading .library-section-label{padding:0}.library-row{color:#404040;text-align:left;width:100%;min-height:34px;transition:color .14s var(--ease),background .14s var(--ease);border-radius:4px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:5px;padding:0 7px;display:grid}.library-row:hover{color:var(--ink);background:var(--surface)}.library-row.is-active{color:var(--accent-ink);background:var(--accent-soft)}.library-row>span:not(.library-row-meta){font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.library-row small{color:var(--muted);font-size:var(--type-caption)}.library-row.is-active small{color:var(--accent-ink);opacity:.72}.library-row-meta{justify-content:flex-end;align-items:center;gap:5px;min-width:0;display:inline-flex}.library-row-meta i{color:var(--muted);background:var(--surface-2);font-size:var(--type-caption);border-radius:3px;padding:2px 4px;font-style:normal;line-height:1}.library-empty-copy{color:var(--muted);font-size:var(--type-caption);margin:2px 7px 10px}.library-inline-create{background:var(--surface);border-radius:4px;grid-template-columns:minmax(0,1fr) 30px;height:32px;margin:7px 6px 0;display:grid}.library-inline-create:focus-within{background:var(--white);box-shadow:0 0 0 2px var(--surface-2)}.library-inline-create input{min-width:0;font-size:var(--type-caption);background:0 0;border:0;padding:0 8px}.library-inline-create input:focus-visible{outline:none}.library-inline-create button{color:var(--muted);border-radius:3px;place-items:center;display:grid}.library-inline-create button:hover:not(:disabled){color:var(--white);background:var(--ink)}.library-panel-footer{--library-footer-inline-padding:20px;--library-footer-action-gap:12px;padding:12px var(--library-footer-inline-padding) 14px;color:var(--muted);font-size:var(--type-caption);background:0 0;border-top:0;gap:10px;line-height:1.45;display:grid}.library-panel-footer>div{gap:var(--library-footer-action-gap);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0;display:grid}.library-panel-footer>div>button:last-child{grid-column:1/-1}.library-panel-footer button{width:100%;min-width:0;height:36px;color:var(--muted);background:var(--surface);font-size:var(--type-caption);border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:0 7px;display:inline-flex;overflow:hidden}.library-panel-footer button:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.library-panel-footer button>svg{flex:none}.library-footer-button-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.library-panel-footer>span{padding-inline:0}.permission-banner{z-index:36;top:calc(var(--nav-height) + 8px);width:min(360px,100vw - 28px);min-height:48px;color:var(--ink);background:var(--glass-surface);box-shadow:var(--shadow-float);font-size:var(--type-caption);text-align:left;-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);transition:transform .18s var(--ease),box-shadow .18s var(--ease);animation:permission-banner-in .22s var(--ease) both;border-radius:9px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 8px;display:grid;position:absolute;right:14px}.permission-banner:hover{box-shadow:var(--shadow-popover);transform:translateY(-1px)}.permission-banner-icon{width:34px;height:34px;color:var(--muted);background:var(--surface);border-radius:6px;place-items:center;display:grid}.permission-banner-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.permission-banner-copy strong{font-weight:500}.permission-banner-copy small{color:var(--muted);font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.permission-banner-action{height:32px;color:var(--muted);background:var(--surface);transition:color .16s var(--ease),background .16s var(--ease);border-radius:5px;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.permission-banner:hover .permission-banner-action{color:var(--white);background:var(--ink)}@keyframes permission-banner-in{0%{opacity:0;transform:translateY(-5px)}}.app-shell{--library-panel-width:320px;height:100%;position:relative}.app-content{background:var(--canvas);height:100%;transition:padding-left .26s var(--ease);grid-template-columns:minmax(0,1fr);padding-left:0;display:grid;overflow:hidden}.app-shell.is-library-open .app-content{padding-left:var(--library-panel-width)}.permission-banner+.app-content{height:100%}.app-content.has-details{grid-template-columns:minmax(0,1fr) 380px}.workspace{background:var(--canvas);min-width:0;min-height:0;position:relative;overflow:hidden}.empty-entry{--entry-pointer-x:50%;--entry-pointer-y:46%;isolation:isolate;color:#1c1d21;background:#fafafb;width:100%;height:100%;min-height:620px;position:relative;overflow:hidden}.empty-entry-header{z-index:6;height:var(--nav-height);color:var(--muted);font-size:var(--type-caption);align-items:center;padding:0 14px;font-weight:400;display:flex;position:absolute;top:0;left:0;right:0}.empty-entry-header span:first-child{color:#0000;letter-spacing:0;align-items:center;width:120px;height:38px;margin-left:10px;font-size:0;display:flex;overflow:hidden}.empty-entry-header nav,.public-information-header nav{align-items:center;gap:3px;margin-left:auto;display:flex}.empty-entry-header nav button,.public-information-header nav button{min-height:34px;color:var(--muted);font-size:var(--type-caption);transition:color .16s var(--ease),background .18s var(--ease);border-radius:6px;padding:0 9px}.empty-entry-header nav button:hover,.public-information-header nav button:hover,.public-information-header nav button.is-active{color:var(--ink);background:var(--white)}.empty-entry-grid{z-index:-3;pointer-events:none;background-image:radial-gradient(circle,#14142817 1px,#0000 1.1px);background-position:0 0;background-size:26px 26px;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:linear-gradient(#0000 2%,#000 17% 84%,#0000 99%);mask-image:linear-gradient(#0000 2%,#000 17%,#000 84%,#0000 99%)}.empty-entry-light{z-index:-2;background:radial-gradient(circle 390px at var(--entry-pointer-x) var(--entry-pointer-y),#7696ff13,transparent 70%),radial-gradient(circle 480px at 50% 45%,#9ea4bf0e,transparent 72%);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.empty-sticker-field{z-index:1;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.empty-sticker-anchor{left:var(--sticker-x);top:var(--sticker-y);width:var(--sticker-width);height:var(--sticker-height);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;perspective:900px;pointer-events:auto;touch-action:manipulation;padding:0;position:absolute;transform:translate(-50%,-50%)}.empty-sticker-parallax,.empty-sticker-float,.empty-sticker-flip,.empty-sticker-face,.empty-sticker-core{width:100%;height:100%}.empty-sticker-parallax{will-change:transform;display:block}.empty-sticker-float{filter:drop-shadow(0 1px #1e22341f)drop-shadow(3px 5px 4px #2b30441a);transform:rotate(var(--sticker-rotate));animation:empty-sticker-float var(--sticker-duration) var(--sticker-delay) ease-in-out infinite alternate;will-change:transform;transition:filter .24s cubic-bezier(.22,1,.36,1);display:block;position:relative}.empty-sticker-flip{z-index:1;transform-style:preserve-3d;transition:transform .62s var(--ease);will-change:transform;display:block;position:relative}.empty-sticker-anchor.is-flipped .empty-sticker-flip{transform:rotateY(180deg)}.empty-sticker-face{backface-visibility:hidden;transform-style:preserve-3d;transition:opacity 1ms linear .31s;display:block;position:absolute;top:0;right:0;bottom:0;left:0}.empty-sticker-front{opacity:1}.empty-sticker-back{opacity:0;transform:rotateY(180deg)}.empty-sticker-anchor.is-flipped .empty-sticker-front{opacity:0}.empty-sticker-anchor.is-flipped .empty-sticker-back{opacity:1}.empty-sticker-face:before{content:"";z-index:0;pointer-events:none;filter:none;background:linear-gradient(135deg,#fff,#e3fff8 19%,#fff 37%,#f5ddff 56%,#dff1ff 76%,#fff);position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px}.empty-sticker-anchor:hover .empty-sticker-float{filter:drop-shadow(0 1px #1e223424)drop-shadow(4px 7px 5px #2b30441f)}.sticker-id-composition .empty-sticker-face:before,.sticker-id-keywords .empty-sticker-face:before,.sticker-id-layout .empty-sticker-face:before{background:linear-gradient(135deg,#fff,#f3faf8,#fff 48%,#f5f3f7 70%,#edf5f7 86%,#fff)}.sticker-id-typography{--sticker-sway:2deg}.sticker-outline-triangle:after,.sticker-outline-burst:after,.sticker-outline-hexagon:after,.sticker-outline-half-disc:after{content:"";z-index:0;pointer-events:none;background:#171820;position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px}.empty-sticker-anchor:focus-visible{outline:none}.empty-sticker-anchor:focus-visible .empty-sticker-float{filter:drop-shadow(0 0 1px var(--focus)) drop-shadow(0 2px 3px #2b304421)}.sticker-outline-triangle:before,.sticker-outline-triangle:after{clip-path:polygon(50% 0,100% 100%,0 100%)}.sticker-outline-burst:before,.sticker-outline-burst:after{clip-path:polygon(50% 0%,59% 18%,75% 5%,78% 25%,98% 20%,87% 39%,100% 50%,82% 59%,95% 76%,74% 75%,70% 97%,53% 82%,39% 100%,34% 79%,13% 88%,20% 66%,0% 59%,18% 45%,4% 29%,27% 28%,29% 7%,44% 21%)}.sticker-outline-hexagon:before,.sticker-outline-hexagon:after{clip-path:polygon(25% 7%,75% 7%,100% 50%,75% 93%,25% 93%,0 50%)}.sticker-outline-pill:before{border-radius:999px}.sticker-outline-oval:before{border-radius:50%}.sticker-outline-label:before{border-radius:12px}.sticker-outline-half-disc:before{clip-path:inset(calc(50% - 6px) 0 0);border-radius:50%}.sticker-outline-half-disc:after{clip-path:inset(calc(50% - 2px) 0 0);border-radius:50%}.empty-sticker-core{z-index:1;color:#1c1d21;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:inset 0 2px 2px #ffffff9e,inset 0 -5px 10px #1c1f2f24}.empty-sticker-core:before{content:"";z-index:1;pointer-events:none;opacity:.8;background:radial-gradient(at 22% 8%,#ffffffe0,#0000 34%),linear-gradient(112deg,#0000 12%,#fff09e2e 27%,#97ffeb42,#c6a7ff3d 51%,#0000 66%),linear-gradient(155deg,#ffffff47,#0000 46%,#181c2d29);position:absolute;top:0;right:0;bottom:0;left:0}.empty-sticker-core:after{content:"";z-index:3;pointer-events:none;opacity:.56;background:linear-gradient(135deg,#0000 35%,#7fffed29 42%,#fffffff5,#ffcaf73d 54%,#0000 63%) 0 0/280% 280%;transition:background-position .68s cubic-bezier(.22,1,.36,1),opacity .18s ease-out;position:absolute;top:0;right:0;bottom:0;left:0}.empty-sticker-anchor:hover .empty-sticker-core:after{opacity:1;background-position:100% 100%}.sticker-id-composition .empty-sticker-core:before,.sticker-id-keywords .empty-sticker-core:before,.sticker-id-layout .empty-sticker-core:before{opacity:.58;background:radial-gradient(at 24% 10%,#ffffffa8,#0000 46%),radial-gradient(at 82% 90%,#181c2d17,#0000 60%)}.sticker-id-composition .empty-sticker-core:after,.sticker-id-keywords .empty-sticker-core:after,.sticker-id-layout .empty-sticker-core:after{opacity:.3;background:radial-gradient(#ffffff94,#fff3 34%,#0000 72%) -110% -80%/86% 156% no-repeat}.empty-sticker-anchor:hover .sticker-id-composition .empty-sticker-core:after,.empty-sticker-anchor:hover .sticker-id-keywords .empty-sticker-core:after,.empty-sticker-anchor:hover .sticker-id-layout .empty-sticker-core:after{opacity:.5;background-position:205% 180%}.shape-triangle{clip-path:polygon(50% 0,100% 100%,0 100%);padding:38px 17px 12px}.shape-half-disc{clip-path:inset(50% 0 0);border-radius:50%;padding:0}.shape-burst{clip-path:polygon(50% 0%,59% 18%,75% 5%,78% 25%,98% 20%,87% 39%,100% 50%,82% 59%,95% 76%,74% 75%,70% 97%,53% 82%,39% 100%,34% 79%,13% 88%,20% 66%,0% 59%,18% 45%,4% 29%,27% 28%,29% 7%,44% 21%);padding:20px 23px 23px}.shape-pill{border:2px solid #1c1d21;border-radius:999px;padding:0 22px}.shape-oval{border:2px solid #1c1d21;border-radius:50%;padding:0 24px}.shape-hexagon{clip-path:polygon(25% 7%,75% 7%,100% 50%,75% 93%,25% 93%,0 50%);padding:14px}.shape-label{border:2px solid #1c1d21;border-radius:9px;padding:0 18px}.tone-cobalt{--sticker-reverse:#2f5bea;color:var(--white);background:#2f5bea}.tone-cyan{--sticker-reverse:#35b7d5;background:#74d9ef}.tone-mint{--sticker-reverse:#36b78e;background:#7eddbd}.tone-violet{--sticker-reverse:#9c50dc;color:var(--white);background:#aa62e8}.tone-coral{--sticker-reverse:#f15c35;color:var(--white);background:#ff714b}.tone-paper{--sticker-reverse:#9a9ca5;background:#fffefd}.tone-butter{--sticker-reverse:#e0b90e;background:#ffe26a}.tone-periwinkle{--sticker-reverse:#817bdc;background:#c9c6ff}.empty-sticker-back-core{color:#434650;background:linear-gradient(145deg,var(--sticker-reverse),var(--sticker-reverse))}@supports (color:color-mix(in lab,red,red)){.empty-sticker-back-core{background:linear-gradient(145deg,color-mix(in srgb,var(--sticker-reverse) 11%,#fff),color-mix(in srgb,var(--sticker-reverse) 4%,#fff))}}.empty-sticker-back-core{box-shadow:inset 0 1px 1px #ffffffe6,inset 0 -3px 8px #22253012}.empty-sticker-back-core:before{opacity:.72;background:radial-gradient(at 24% 12%,#ffffffe6,#0000 48%),repeating-linear-gradient(108deg,#0000 0,#0000 8px,#22253007 8px,#22253007 9px)}.empty-sticker-back-core:after{background:linear-gradient(135deg,transparent 28%,#ffffff29 43%,var(--sticker-reverse) 51%,transparent 68%)}@supports (color:color-mix(in lab,red,red)){.empty-sticker-back-core:after{background:linear-gradient(135deg,transparent 28%,#ffffff29 43%,color-mix(in srgb,var(--sticker-reverse) 11%,transparent) 51%,transparent 68%)}}.empty-sticker-back-core:after{opacity:.22;background-position:12% 12%;background-size:220% 220%}.empty-sticker-anchor:hover .empty-sticker-back-core:after{opacity:.34;background-position:88% 88%}.empty-sticker-back-copy{z-index:2;letter-spacing:-.02em;text-align:center;justify-items:center;max-width:86%;font-family:Space Grotesk,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:13px;font-weight:500;line-height:1.12;display:grid;position:relative}.empty-sticker-back-core.shape-label .empty-sticker-back-copy,.empty-sticker-back-core.shape-pill .empty-sticker-back-copy{font-size:12px;line-height:1.08}.empty-sticker-back-core.shape-hexagon .empty-sticker-back-copy{max-width:82%;font-size:12px}.empty-sticker-back-core.shape-triangle .empty-sticker-back-copy{max-width:78%;transform:translateY(10px)}.empty-sticker-back-core.shape-half-disc .empty-sticker-back-copy{width:124px;max-width:none;font-size:12px;line-height:1.08;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.empty-sticker-label{z-index:2;text-align:center;justify-items:center;line-height:.9;display:grid;position:relative}.sticker-type-condensed .empty-sticker-label{letter-spacing:-.045em;font-family:Space Grotesk,sans-serif;font-size:24px;font-weight:300;transform:scaleX(.86)}.sticker-type-bold .empty-sticker-label{letter-spacing:-.035em;font-family:Space Grotesk,sans-serif;font-size:21px;font-weight:500}.sticker-type-mono .empty-sticker-label{letter-spacing:.03em;font-family:Courier New,Courier,monospace;font-size:18px;font-weight:400}.sticker-type-serif .empty-sticker-label{letter-spacing:-.025em;font-family:Cormorant Garamond,Iowan Old Style,Baskerville,serif;font-size:30px;font-style:italic;font-weight:500}.sticker-type-round .empty-sticker-label{letter-spacing:-.035em;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:500}.shape-half-disc .empty-sticker-label{width:122px;color:var(--white);white-space:nowrap;font-size:18px;line-height:1;position:absolute;bottom:35px;left:50%;transform:translate(-50%)rotate(6deg)}.shape-burst .empty-sticker-label{font-size:19px;line-height:.84}.shape-triangle .empty-sticker-label{transform:translateY(10px)scaleX(.84)}.empty-sticker-eyes{z-index:2;gap:5px;margin:0 0 6px -2px;display:flex;position:relative}.empty-sticker-eyes svg{width:24px;height:20px;overflow:visible;transform:rotate(11deg)}.empty-sticker-eyes svg:last-child{transform:rotate(-11deg)scaleX(-1)}.empty-sticker-eyes path{fill:var(--white)}.empty-sticker-eyes circle{fill:#1c1d21}.empty-entry-content{z-index:3;text-align:center;width:min(900px,100% - 44px);animation:empty-content-arrive .85s var(--ease) both;justify-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.empty-entry-content h1{letter-spacing:-.032em;text-wrap:balance;justify-items:center;margin:0;font-family:Space Grotesk,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:clamp(4.3rem,8vw,8rem);font-weight:300;line-height:.92;display:grid}.empty-entry-content h1>span{white-space:nowrap;display:block}.empty-entry-content h1 em{letter-spacing:-.045em;padding:0 .04em .07em 0;font-family:Cormorant Garamond,Iowan Old Style,Baskerville,serif;font-style:italic;font-weight:500;display:inline-block}.empty-entry-copy{color:#6b6f7a;width:min(472px,82vw);font-size:var(--type-section);letter-spacing:-.012em;margin:34px auto 0;font-weight:400;line-height:1.55}.empty-folder-action{--folder-glow-angle:0deg;isolation:isolate;color:#1c1d21;text-align:left;width:320px;height:92px;transition:transform .26s var(--ease),box-shadow .26s var(--ease),background .26s var(--ease);-webkit-backdrop-filter:blur(20px)saturate(1.24);backdrop-filter:blur(20px)saturate(1.24);background:linear-gradient(#ffffffe0,#fafbffb8 52%,#f6f8ffc7);border:0;border-radius:999px;grid-template-columns:60px minmax(0,1fr);align-items:center;gap:18px;margin-top:42px;padding:0 32px 0 16px;display:grid;position:relative;box-shadow:inset 0 1px #fffffffa,inset 0 -1px #707ea62e,inset 0 -10px 18px #779bdc0f,0 10px 22px -15px #14142847}.empty-folder-action:before{content:"";z-index:1;pointer-events:none;border-radius:inherit;background:conic-gradient(from var(--folder-glow-angle),#ffffff80 0 56%,#ffde9475 64%,#77e2ffeb 72%,#b27dffe6 81%,#ff9178ad 89%,#fff7e0a8 95%,#ffffff80 100%);opacity:.84;padding:3px;animation:5.2s linear infinite empty-folder-glow;position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0,#000 0),linear-gradient(#000 0,#000 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.empty-folder-action:after{content:"";z-index:0;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at 22% 12%,#ffffffd1 0%,transparent 34%),conic-gradient(from var(--folder-glow-angle) at 50% 50%,transparent 0 14%,#74d8ff42 25%,transparent 39%,#b57eff38 53%,transparent 68%,#ffc16c33 82%,transparent 100%);filter:blur(8px)saturate(1.18);clip-path:inset(0 round 999px);opacity:.62;animation:5.2s linear infinite empty-folder-glow;position:absolute;top:2px;right:2px;bottom:2px;left:2px}.empty-folder-action>*{z-index:2;position:relative}.empty-folder-action:hover{background:linear-gradient(#fffffff0,#f9fbffc7 54%,#f4f7ffd6);transform:translateY(-4px);box-shadow:inset 0 1px #fff,inset 0 -1px #707ea633,inset 0 -12px 22px #779bdc17,0 13px 26px -17px #14142852}.empty-folder-action:hover:before,.empty-folder-action:focus-visible:before{opacity:1}.empty-folder-action:hover:after,.empty-folder-action:focus-visible:after{opacity:.86}.empty-folder-action:active{transform:translateY(-1px)scale(.985)}.empty-folder-action-icon{width:60px;height:60px;color:var(--white);transition:transform .3s var(--ease);background:#1c1d21;border-radius:50%;place-items:center;display:grid}.empty-folder-action-icon svg{width:24px;height:24px}.empty-folder-action:hover .empty-folder-action-icon{transform:rotate(90deg)}.empty-folder-action-copy{gap:6px;min-width:0;display:grid}.empty-folder-action-copy strong{letter-spacing:-.015em;white-space:nowrap;font-size:1.25rem;font-weight:500}.empty-folder-action-copy small{color:#9a9ea9;font-size:var(--type-section);white-space:nowrap;font-weight:400}@keyframes empty-content-arrive{0%{opacity:0;transform:translate(-50%,calc(18px - 50%))}}@property --folder-glow-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes empty-folder-glow{to{--folder-glow-angle:360deg}}@keyframes empty-sticker-float{0%{transform:translate3d(0,-5px,0) rotate(var(--sticker-rotate)) scale(.985)}to{transform:translate3d(0,7px,0) rotate(calc(var(--sticker-rotate) + var(--sticker-sway,7deg))) scale(1.015)}}.primary-action{min-height:44px;color:var(--white);background:var(--ink);font-size:var(--type-body);transition:transform .18s var(--ease),opacity .18s var(--ease);border-radius:5px;align-items:center;gap:10px;padding:0 18px;display:inline-flex}.primary-action:hover{opacity:.9;transform:translateY(-1px)}.text-action{color:var(--muted);font-size:var(--type-caption);text-underline-offset:4px;margin-top:15px;text-decoration:underline;display:block}.qa-folder-input{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed}.map-view{background:var(--canvas);--map-bottom-inset:14px;--map-bottom-cell-height:40px;position:absolute;top:0;right:0;bottom:0;left:0}.map-view .react-flow{background:var(--canvas)}.map-view .react-flow__node.folder-tree-image-node{transition:transform .26s var(--ease)}.map-view .react-flow__node.dragging{transition:none}.map-view .react-flow__selection{border:1px dashed var(--accent);background:#dedede47}.map-view .react-flow__nodesselection-rect{border:1px solid var(--accent);background:0 0}.map-marquee-selection{z-index:5;pointer-events:none;background:#d1d1d133;border:1px solid oklch(38% 0 0/.78);position:absolute;box-shadow:inset 0 0 0 1px #ffffff6b}.canvas-case{isolation:isolate;width:100%;height:100%;transition:opacity .22s var(--ease),filter .22s var(--ease);position:relative}.case-cover{z-index:2;contain:paint;width:100%;height:100%;transition:transform .26s var(--ease),box-shadow .22s var(--ease);background:0 0;position:relative;overflow:hidden}.case-cover[role=button]{cursor:pointer}.case-cover[role=button]:focus-visible{outline-offset:3px}.case-cover img{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block}.canvas-case:hover .case-cover{transform:translateY(-2px)}.canvas-case.is-selected .case-cover{box-shadow:var(--shadow-selection)}.canvas-case.is-highlighted:not(.is-selected) .case-cover{box-shadow:0 0 0 8px #0b0b0b13}.canvas-case.is-dimmed{opacity:.18;filter:saturate(.35)}.canvas-case.is-missing{opacity:.48}.react-flow__node-cluster{overflow:visible}.canvas-cluster-toolbar{z-index:4;pointer-events:none}.canvas-cluster-label{min-width:0;height:32px;color:var(--muted);white-space:nowrap;pointer-events:none;text-shadow:0 0 3px var(--canvas),0 0 8px var(--canvas);align-items:center;gap:7px;display:inline-flex;overflow:hidden}.canvas-cluster-label i{border-radius:3px;flex:none;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0b0b0b1f}.canvas-cluster-label strong{min-width:0;color:inherit;font-size:var(--type-body);letter-spacing:-.015em;text-overflow:ellipsis;flex:auto;font-weight:500;overflow:hidden}.canvas-cluster-label span{color:var(--faint);font-size:var(--type-caption);flex:none}.canvas-cluster-label.is-compact span{display:none}.canvas-cluster-label.is-ellipsis-only{justify-content:flex-start}.canvas-cluster-label.is-ellipsis-only strong{flex:none;max-width:100%}.canvas-cluster-anchor{width:1px;height:1px;display:block}.folder-card{isolation:isolate;text-align:left;--folder-preview-inline:9%;--folder-preview-top:14.7%;--folder-preview-bottom:14.5%;--folder-sleeve-inline:2.7%;--folder-sleeve-top:43.15%;--folder-sleeve-bottom:3.7%;background:0 0;border-radius:0;padding:0;position:relative;overflow:visible}.folder-card:focus-visible{outline:none}.folder-card__shell,.folder-card__preview-stack,.folder-card__preview-sheet,.folder-card__glass-sleeve,.folder-card__glass-frame{pointer-events:none;display:block;position:absolute}.folder-card__shell{z-index:1;filter:drop-shadow(0 2px 2px oklch(24% 0 0/.07));width:100%;height:100%;top:0;right:0;bottom:0;left:0;overflow:visible}.folder-card__shell-stop-top{stop-color:var(--white)}.folder-card__shell-stop-middle{stop-color:var(--surface-2)}@supports (color:color-mix(in lab,red,red)){.folder-card__shell-stop-middle{stop-color:color-mix(in oklch,var(--surface-2) 52%,var(--white))}}.folder-card__shell-stop-bottom{stop-color:var(--surface-2)}@supports (color:color-mix(in lab,red,red)){.folder-card__shell-stop-bottom{stop-color:color-mix(in oklch,var(--surface-2) 84%,var(--white))}}.folder-card__shell-face{stroke:#8989896b;stroke-width:1.15px;stroke-linejoin:round}.folder-card__shell-highlight{fill:none;stroke:#ffffffe0;stroke-width:.75px;stroke-linecap:round;stroke-linejoin:round}.folder-card__shell-depth{fill:none;stroke:#40404026;stroke-width:.7px;stroke-linecap:round}.folder-card__preview-stack{z-index:2;top:var(--folder-preview-top);right:var(--folder-preview-inline);bottom:var(--folder-preview-bottom);left:var(--folder-preview-inline);overflow:visible}.folder-card__preview-sheet{background:var(--white);transform-origin:50% 100%;transition:transform .22s var(--ease),box-shadow .22s var(--ease);padding:4px;top:0;right:0;bottom:0;left:0;overflow:hidden;box-shadow:0 1px 4px #16161624}.folder-card__preview-sheet--rear{z-index:1;transform:translate(5px,-8px)rotate(1.75deg);box-shadow:0 1px 2px #16161614}.folder-card__preview-sheet--middle{z-index:2;transform:translate(-4px,-4px)rotate(-1.25deg);box-shadow:0 1px 2px #1616161a}.folder-card__preview-sheet--front{z-index:3;transform:translateY(0)}.folder-card__preview-sheet img{object-fit:contain;object-position:center;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.folder-card__preview-sheet:after{content:"";pointer-events:none;position:absolute;top:4px;right:4px;bottom:4px;left:4px;box-shadow:inset 0 0 0 1px #2e2e2e12,inset 0 1px #ffffffad}.folder-card__glass-sleeve{z-index:3;top:var(--folder-sleeve-top);right:var(--folder-sleeve-inline);bottom:var(--folder-sleeve-bottom);left:var(--folder-sleeve-inline);background:#f5f5f5c7;border-radius:5.7%/12%;overflow:hidden;box-shadow:inset 0 1px #ffffffbd}.folder-card__glass-sleeve:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#ffffff38,#ffffff0f 31%,#0000 55%,#29292909);position:absolute;top:0;right:0;bottom:0;left:0}.folder-card__glass-sleeve:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(140% 100% at 12% 0,#ffffff6b,#ffffff1a 34%,#0000 62%);position:absolute;top:0;right:0;bottom:0;left:0}.folder-card__glass-frame{z-index:4;width:100%;height:100%;top:0;right:0;bottom:0;left:0;overflow:visible}.folder-card__glass-frame-outline{fill:none;stroke:#83838366;stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 2px oklch(24% 0 0/.045))}.folder-card__glass-frame-highlight{fill:none;stroke:#ffffffdb;stroke-width:.75px;stroke-linecap:round}.folder-card__glass-frame-depth{fill:none;stroke:#38383821;stroke-width:.7px;stroke-linecap:round}.folder-card__focus-ring{fill:none;stroke:var(--ink);stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;opacity:0;filter:drop-shadow(0 2px 2px oklch(20% 0 0/.1));transition:opacity .18s var(--ease)}.folder-card__meta{z-index:1;align-content:center;gap:2px;min-width:0;height:clamp(48px,28%,54px);display:grid;position:absolute;bottom:max(8px,7%);left:max(12px,7%);right:max(32px,18%)}.folder-card__meta strong,.folder-card__meta small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.folder-card__meta strong{color:var(--ink);font-size:var(--type-caption);font-weight:500}.folder-card__meta small{color:var(--muted);font-size:var(--type-caption)}.folder-card__arrow{z-index:1;color:var(--muted);transition:transform .18s var(--ease),color .18s var(--ease);position:absolute;bottom:17px;right:11px}.folder-card:hover .folder-card__preview-sheet--rear{transform:translate(6px,-10px)rotate(1.95deg);box-shadow:0 1px 3px #16161617}.folder-card:hover .folder-card__preview-sheet--middle{transform:translate(-5px,-6px)rotate(-1.4deg);box-shadow:0 1px 3px #1616161a}.folder-card:hover .folder-card__preview-sheet--front{transform:translateY(-3px);box-shadow:0 2px 5px #16161624}.folder-card:hover .folder-card__arrow{color:var(--ink);transform:translate(2px)}.folder-card:focus-visible .folder-card__focus-ring,.canvas-folder-shell.is-focused .folder-card__focus-ring{opacity:1}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.folder-card__glass-sleeve{-webkit-backdrop-filter:blur(11px)saturate(.76);backdrop-filter:blur(11px)saturate(.76);background:#fcfcfcb8}.folder-card.is-empty .folder-card__glass-sleeve{background:#f8f8f8e0}}.canvas-folder-shell{isolation:isolate;width:100%;height:100%;position:relative}.canvas-folder-node{width:100%;height:100%;transition:filter .22s var(--ease)}.canvas-folder-shell.is-expanded .folder-card__arrow,.canvas-folder-shell.is-expanded .folder-card:hover .folder-card__arrow{color:var(--ink);transform:rotate(90deg)}.canvas-folder-shell.is-focused .folder-card__arrow{color:var(--ink)}.canvas-map-folder-card .folder-card__meta{visibility:hidden}.canvas-folder-meta{z-index:6;pointer-events:none;align-content:center;gap:2px;min-width:0;height:clamp(48px,28%,54px);display:grid;position:absolute;bottom:max(8px,7%);left:max(12px,7%);right:max(32px,18%)}.canvas-folder-title-line{max-height:30px;color:var(--ink);font-size:var(--type-caption);overflow-wrap:anywhere;font-weight:500;line-height:15px;display:block;overflow:hidden}.folder-title-with-rename>span:first-child{display:inline}.folder-title-tail{white-space:nowrap;display:inline}.canvas-folder-meta>small{color:var(--muted);font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;line-height:15px;overflow:hidden}.canvas-folder-rename{width:18px;height:18px;color:var(--muted);box-shadow:none;opacity:0;pointer-events:none;vertical-align:-4px;transition:opacity .16s var(--ease),color .16s var(--ease);background:0 0;border-radius:4px;place-items:center;margin-left:4px;padding:0;display:inline-grid}.canvas-folder-shell:hover .canvas-folder-rename,.canvas-folder-shell:focus-within .canvas-folder-rename{opacity:1;pointer-events:auto}.canvas-folder-rename:hover{color:var(--ink);background:0 0}.folder-tree-handle{opacity:0;pointer-events:none!important;background:0 0!important;border:0!important;width:1px!important;min-width:0!important;height:1px!important;min-height:0!important}.folder-branch-collapse{z-index:8;width:30px;height:30px;color:var(--muted);opacity:.62;transition:color .16s var(--ease),opacity .16s var(--ease),transform .2s var(--ease),background .16s var(--ease);background:#f7f7f7f0;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-17px;left:50%;transform:translate(-50%);box-shadow:0 1px 5px #1616161f}.canvas-folder-shell:hover .folder-branch-collapse,.canvas-folder-shell.is-focused .folder-branch-collapse,.folder-branch-collapse:focus-visible{color:var(--ink);background:var(--white);opacity:1}.folder-branch-collapse:hover{transform:translate(-50%)translateY(-1px)}.folder-branch-tooltip{width:max-content;color:var(--white);font-size:var(--type-caption);opacity:0;pointer-events:none;transition:opacity .14s var(--ease),transform .16s var(--ease);background:#141414f0;border-radius:5px;padding:6px 8px;line-height:1;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,3px)}.folder-branch-collapse:hover .folder-branch-tooltip,.folder-branch-collapse:focus-visible .folder-branch-tooltip{opacity:1;transform:translate(-50%)}.map-view .folder-tree-edge .react-flow__edge-path{stroke:var(--divider)}@supports (color:color-mix(in lab,red,red)){.map-view .folder-tree-edge .react-flow__edge-path{stroke:color-mix(in oklch,var(--divider) 72%,var(--faint))}}.map-view .folder-tree-edge .react-flow__edge-path{stroke-width:1px;stroke-dasharray:3 6;stroke-linecap:round;opacity:.92;transition:stroke .18s var(--ease),stroke-width .18s var(--ease),opacity .18s var(--ease)}.map-view .folder-tree-edge.is-focused .react-flow__edge-path{stroke:var(--faint);stroke-width:1.15px;opacity:.7}.map-view.is-folder-tree .react-flow__node.folder-tree-node,.map-view.is-folder-tree .react-flow__node.folder-tree-image-node{animation:folder-tree-node-in .22s var(--ease) both}@keyframes folder-tree-node-in{0%{opacity:0;filter:blur(2px)}}.case-stack{z-index:0;background:var(--white);pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 0 0 1px #c4c4c4}.case-stack.stack-one{transform:translate(7px,7px)rotate(.45deg)}.case-stack.stack-two{opacity:.72;transform:translate(13px,13px)rotate(1deg)}.case-count,.gallery-case-count{z-index:4;color:var(--white);font-size:var(--type-caption);background:#060606e0;border-radius:3px;align-items:center;gap:4px;padding:5px 6px;display:inline-flex;position:absolute;bottom:7px;right:7px}.media-duration-badge{z-index:4;min-height:24px;color:var(--white);font-size:var(--type-caption);font-variant-numeric:tabular-nums;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:opacity .16s var(--ease);background:#060606c2;border-radius:3px;align-items:center;gap:4px;padding:4px 6px;display:inline-flex;position:absolute;bottom:7px;left:7px}.media-duration-badge svg{flex:none}.canvas-case .case-count,.canvas-case .missing-label{pointer-events:none}.case-hover-meta{z-index:5;opacity:0;pointer-events:none;transition:opacity .19s var(--ease),transform .22s var(--ease);flex-direction:column;gap:3px;padding-top:8px;display:flex;position:absolute;top:100%;left:0;right:0;transform:translateY(-3px)}.case-hover-meta span{color:var(--muted);font-size:var(--type-caption)}.case-hover-meta strong{color:var(--ink);font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.canvas-case:hover .case-hover-meta,.canvas-case.is-selected .case-hover-meta{opacity:1;transform:translateY(0)}.case-menu-trigger{z-index:8;width:26px;height:26px;color:var(--white);opacity:0;pointer-events:none;transition:opacity .16s var(--ease);background:#060606c7;border-radius:3px;place-items:center;display:grid;position:absolute;top:6px;right:6px}.canvas-case:hover .case-menu-trigger,.case-menu-trigger:focus-visible{opacity:1;pointer-events:auto}.case-node-menu{z-index:12;background:var(--glass-surface);border-radius:var(--radius-control);width:150px;box-shadow:var(--shadow-popover);-webkit-backdrop-filter:blur(16px)saturate(1.08);backdrop-filter:blur(16px)saturate(1.08);padding:4px;position:absolute;top:36px;right:6px}.case-node-menu button{text-align:left;width:100%;min-height:30px;font-size:var(--type-caption);border-radius:3px;align-items:center;gap:7px;padding:0 8px;display:flex}.case-node-menu button:hover{background:var(--surface)}.image-loading{width:100%;height:100%;color:var(--muted);font-size:var(--type-caption);place-items:center;display:grid}.missing-label{color:var(--white);background:var(--ink);font-size:var(--type-caption);border-radius:3px;padding:4px 7px;position:absolute;bottom:7px;left:7px}.handle{background:var(--white);border:1px solid var(--ink);width:6px;height:6px;position:absolute}.handle-nw{top:-4px;left:-4px}.handle-ne{top:-4px;right:-4px}.handle-sw{bottom:-4px;left:-4px}.handle-se{bottom:-4px;right:-4px}.map-toolbar{z-index:34;background:var(--glass-surface);box-shadow:var(--shadow-float);font-size:var(--type-caption);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);transition:left .26s var(--ease);border-radius:10px;align-items:center;gap:3px;padding:4px;display:flex;position:fixed;top:6px;left:50%;transform:translate(-50%)}.app-shell.is-library-open .map-toolbar{left:calc(50% + 160px)}.map-search-wrap{width:min(230px,21vw);height:38px;transition:color .16s var(--ease),background .18s var(--ease),box-shadow .18s var(--ease);background:#f0f0f0e0;border-radius:7px;align-items:center;gap:8px;padding:0 10px;display:flex;position:relative}.map-search-wrap:hover{background:var(--white)}.map-search-wrap:focus-within{background:var(--white);box-shadow:0 0 0 2px var(--accent-soft-strong)}.map-search-wrap.is-color-search{width:min(390px,34vw)}.map-search-wrap input{width:100%;min-width:0;font-size:var(--type-caption);background:0 0;border:0}.color-search-swatch{border-radius:3px;flex:none;width:16px;height:16px;box-shadow:inset 0 0 0 1px #0b0b0b1f}.color-search-label{white-space:nowrap;min-width:0;font-size:var(--type-caption)}.color-search-label strong{font-weight:500}.color-search-count{color:var(--muted);white-space:nowrap;font-size:var(--type-caption);margin-left:auto;padding:0!important}.clear-color-search{background:var(--white);height:24px;font-size:var(--type-caption);border-radius:3px;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.clear-color-search:hover{color:var(--accent-ink);background:var(--accent-soft)}.map-search-wrap input::placeholder,.gallery-header-search input::placeholder,.field input::placeholder,.field textarea::placeholder{color:#6f6f6f;opacity:1}.filter-control,.arrange-control{height:38px;transition:color .16s var(--ease),background .18s var(--ease);border-radius:8px;align-items:center;display:flex;position:relative}.filter-control:hover,.filter-control.is-open,.arrange-control:hover,.arrange-control.is-open{color:var(--accent-ink);background:var(--accent-soft)}.toolbar-dropdown-trigger{height:38px;font-size:var(--type-caption);border-radius:8px;align-items:center;gap:6px;padding:0 8px;display:flex}.toolbar-dropdown-label{text-overflow:ellipsis;white-space:nowrap;max-width:118px;overflow:hidden}.toolbar-dropdown-trigger>svg:last-child{color:var(--muted);transition:transform .18s var(--ease);margin-left:1px}.toolbar-dropdown-trigger>svg:last-child.is-open{transform:rotate(180deg)}.toolbar-dropdown-menu{z-index:48;border-radius:var(--radius-panel);background:var(--glass-surface);width:max(180px,100%);max-height:min(300px,100vh - 76px);box-shadow:var(--shadow-popover);animation:view-menu-in .17s var(--ease) both;-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);padding:4px;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto}.toolbar-dropdown-menu-label{color:var(--faint);font-size:var(--type-caption);pointer-events:none;-webkit-user-select:none;user-select:none;padding:6px 9px 5px;font-weight:400;line-height:1.2;display:block}.toolbar-dropdown-menu button{width:100%;min-height:34px;color:var(--muted);text-align:left;font-size:var(--type-caption);border-radius:5px;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:8px;padding:0 9px;display:grid}.toolbar-dropdown-menu button:hover{color:var(--ink);background:var(--surface)}.toolbar-dropdown-menu button.is-active{color:var(--accent-ink);background:var(--accent-soft)}.toolbar-dropdown-menu button>i{width:13px;height:1px}.toolbar-dropdown-menu button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.library-filter-menu{width:max(210px,100%);padding:6px 4px}.toolbar-dropdown-section+.toolbar-dropdown-section{border-top:1px solid var(--line-soft);margin-top:7px;padding-top:7px}.toolbar-dropdown-section-label{color:var(--faint);cursor:default;font-size:var(--type-caption);letter-spacing:.01em;pointer-events:none;-webkit-user-select:none;user-select:none;padding:4px 9px 6px;font-weight:400;line-height:1.2;display:block}.filter-control .toolbar-dropdown-label{max-width:158px}.map-toolbar>span{min-height:38px;color:var(--muted);white-space:nowrap;align-items:center;padding:0 7px;display:inline-flex}.map-case-count{margin-left:-2px}.selection-count{color:var(--ink)!important}.map-folder-navigation{z-index:1;flex:0 280px;align-items:center;gap:2px;min-width:0;max-width:min(280px,24vw);height:38px;padding:0;display:flex;position:relative}.folder-back-action{height:34px;color:var(--muted);font-size:var(--type-caption);white-space:nowrap;border-radius:5px;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.folder-back-action:hover{color:var(--ink);background:var(--surface)}.folder-breadcrumbs{flex:auto;align-items:center;min-width:0;display:flex;overflow:hidden}.folder-breadcrumbs>span{min-width:0;color:var(--faint);align-items:center;display:flex}.folder-breadcrumbs button{min-width:0;max-width:112px;height:34px;color:var(--muted);font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;border-radius:5px;padding:0 6px;overflow:hidden}.folder-breadcrumbs button:not(.is-current):hover{color:var(--ink);background:var(--surface)}.folder-breadcrumbs button.is-current{color:var(--ink);cursor:default;font-weight:500}.folder-breadcrumb-ellipsis{color:var(--faint);font-size:var(--type-caption);padding-left:5px}.search-results-popover{background:var(--glass-surface);width:330px;max-height:320px;box-shadow:var(--shadow-popover);border-radius:var(--radius-panel);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);padding:5px;position:absolute;top:calc(100% + 8px);left:0;overflow:auto}.search-results-popover button{text-align:left;border-radius:4px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px;width:100%;padding:7px;display:grid}.search-results-popover button img{object-fit:cover;width:38px;height:32px}.search-results-popover button>span{flex-direction:column;gap:3px;min-width:0;display:flex}.search-results-popover button strong{font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.search-results-popover button:hover{background:var(--surface)}.search-results-popover small{color:var(--muted)}.search-results-popover p{color:var(--muted);margin:10px}.canvas-controls{height:var(--map-bottom-cell-height);margin:0 0 var(--map-bottom-inset) var(--map-bottom-inset);border-radius:var(--radius-control);background:var(--glass-surface);box-shadow:var(--shadow-float);font-size:var(--type-caption);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);align-items:center;gap:3px;padding:5px;display:flex}.canvas-controls button{border-radius:4px;justify-content:center;align-items:center;gap:6px;min-width:30px;height:30px;padding:0 9px;display:inline-flex}.canvas-controls button:hover{color:var(--accent-ink);background:var(--accent-soft)}.canvas-controls span{text-align:center;min-width:42px;color:var(--muted)}.canvas-hint{right:var(--map-bottom-inset);bottom:var(--map-bottom-inset);z-index:2;color:var(--muted);background:var(--glass-surface);font-size:var(--type-caption);pointer-events:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:4px;padding:5px 7px;position:absolute;box-shadow:0 2px 6px #29292914}.case-detail-workspace{z-index:60;animation:detail-backdrop-in .18s var(--ease) both;--detail-type-caption:var(--type-caption);--detail-type-body:var(--type-body);--detail-type-section:var(--type-section);--detail-type-title:var(--type-title);justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.detail-backdrop{cursor:default;background:#020202b8;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.detail-global-close{z-index:2;color:#ebebeb;height:34px;font-size:var(--detail-type-caption);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color .16s var(--ease),background .16s var(--ease);background:#ffffff14;border-radius:17px;align-items:center;gap:7px;padding:0 10px;display:inline-flex;position:fixed;top:5px;right:10px}.detail-global-close:hover{color:var(--ink);background:var(--white)}.case-detail-surface{background:var(--white);width:100%;height:calc(100% - 44px);animation:detail-sheet-up .28s var(--ease) both;border-radius:12px 12px 0 0;grid-template-columns:minmax(0,1fr) clamp(460px,36vw,540px);display:grid;position:relative;overflow:hidden;box-shadow:0 -4px 8px #1b1b1b29,inset 0 1px #fffffff5}@keyframes detail-backdrop-in{0%{opacity:0}}@keyframes detail-sheet-up{0%{opacity:0;transform:translateY(32px)}}.case-viewer{min-width:0;color:var(--white);background:#050505;grid-template-rows:58px minmax(0,1fr) auto;display:grid;overflow:hidden}.viewer-header{justify-content:space-between;align-items:center;padding:0 18px;display:flex}.viewer-header>div:first-child{align-items:baseline;gap:12px;display:flex}.viewer-header>div:first-child span{color:#9e9e9e;font-size:var(--detail-type-caption)}.viewer-header strong{font-size:var(--detail-type-body);font-weight:400}.viewer-actions{color:#bebebe;font-size:var(--detail-type-body);align-items:center;gap:3px;font-weight:400;display:flex}.viewer-actions button{min-width:30px;height:30px;color:inherit;font-size:inherit;font-weight:inherit;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.viewer-actions button.viewer-tool-action{padding-inline:9px 10px}.viewer-actions svg{flex:none}.viewer-tool-action .action-label{line-height:1}.viewer-actions button:hover{color:var(--white);background:#1b1b1b}.viewer-actions button.is-active{color:var(--white);background:var(--accent)}.viewer-actions span{color:inherit;font-size:inherit;font-weight:inherit}.viewer-zoom-control{align-items:center;gap:2px;display:flex}.viewer-zoom-control span{text-align:center;font-variant-numeric:tabular-nums;min-width:44px}.detail-image-stage{place-items:center;min-width:0;min-height:0;padding:18px 54px;display:grid;position:relative;overflow:auto}.detail-image-stage.is-pannable{cursor:grab}.detail-image-stage.is-pannable:active{cursor:grabbing}.detail-image-canvas{transition:width .24s var(--ease),height .24s var(--ease);background:#121212;flex:none;position:relative}.detail-image-canvas img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.detail-image-canvas.is-video{background:#020202}.detail-image-canvas video{object-fit:contain;background:#020202;width:100%;height:100%;display:block}.detail-video-unavailable{color:#b7b7b7;text-align:center;place-content:center;justify-items:center;gap:8px;width:100%;height:100%;padding:24px;display:grid}.detail-video-unavailable strong{font-size:var(--detail-type-body);font-weight:500}.detail-video-unavailable small{color:#7a7a7a;max-width:360px;font-size:var(--detail-type-caption);line-height:1.45}.detail-image-canvas.is-sampling img{cursor:crosshair}.detail-image-canvas.is-adjusting-markers .image-annotation{cursor:grab;touch-action:none;box-shadow:0 0 0 2px #ffffff94,0 2px 6px #0000003d}.detail-image-canvas.is-adjusting-markers .image-annotation:active{cursor:grabbing}.detail-image-loading{color:#989898;width:100%;height:100%;font-size:var(--detail-type-body);place-items:center;display:grid}.image-nav{z-index:2;color:#aeaeae;border-radius:4px;place-items:center;width:36px;height:48px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.image-nav:hover{color:var(--white);background:#1b1b1b}.image-nav.previous{left:10px}.image-nav.next{right:10px}.image-annotation{z-index:3;width:30px;height:30px;color:var(--ink);font-size:var(--detail-type-caption);transition:color .17s var(--ease),background .17s var(--ease),transform .2s var(--ease);background:#ffffffeb;border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 6px #0000003d}.image-annotation:hover{transform:translate(-50%,-50%)scale(1.08)}.image-annotation.is-active{color:var(--white);background:var(--accent);box-shadow:0 0 0 4px #d7d7d780}.image-annotation.is-dragging{transition:none;transform:translate(-50%,-50%)scale(.96)}.viewer-footer{align-items:center;min-width:0;padding:15px 24px 17px;display:grid}.viewer-footer.is-single-image{grid-template-columns:minmax(0,1fr);min-height:88px}.viewer-footer.has-multiple-images{grid-template:"page thumbnails"48px"metadata metadata"/auto minmax(0,1fr);gap:6px 22px;min-height:122px;padding-inline:18px}.image-page{color:#a4a4a4;font-size:var(--detail-type-caption);white-space:nowrap;grid-area:page;align-items:center;display:flex}.image-thumbnails{justify-content:center;gap:6px;min-width:0;display:flex;overflow:hidden}.viewer-footer.has-multiple-images .image-thumbnails{grid-area:thumbnails}.image-thumbnails button{opacity:.45;width:42px;height:42px;transition:opacity .16s var(--ease);background:#161616;padding:2px}.image-thumbnails button:hover,.image-thumbnails button.is-active{opacity:1}.image-thumbnails button.is-active{box-shadow:0 0 0 2px var(--accent)}.image-thumbnails img{object-fit:cover;width:100%;height:100%}.viewer-footer dl{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;width:100%;margin:0;display:grid}.viewer-footer.has-multiple-images dl{grid-area:metadata}.viewer-footer dl div{min-width:0;font-size:var(--detail-type-caption);flex-direction:column;gap:4px;display:flex}.viewer-footer dt{color:#717171}.viewer-footer dd{color:#b7b7b7;text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.analysis-panel{background:var(--white);min-width:0;height:100%;overflow:hidden}.analysis-scroll{height:100%;padding:0 20px 40px;overflow-y:auto}.case-intro{padding:22px 0 var(--inspector-section-gap)}.case-kicker{min-width:0;color:var(--muted);font-size:var(--detail-type-caption);justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.case-kicker>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.case-status-actions{flex:none;align-items:center;gap:4px;display:flex}.case-status-actions button{min-height:30px;color:var(--muted);font-size:var(--detail-type-caption);transition:color .16s var(--ease),background .16s var(--ease);border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.case-status-actions button:hover,.case-status-actions button.is-active{color:var(--ink);background:var(--surface)}.case-status-actions .favorite-action{width:30px;padding:0}.case-file-heading{min-width:0}.case-file-title{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:var(--detail-type-title);letter-spacing:-.035em;text-wrap:pretty;margin:0;padding:3px 0 0;font-weight:400;line-height:1.08}.case-file-title-action{min-height:30px;color:var(--muted);background:var(--surface);font-size:var(--detail-type-caption);letter-spacing:0;transition:color .16s var(--ease),background .16s var(--ease),transform .16s var(--ease);border-radius:4px;align-items:center;gap:6px;margin-top:11px;padding:0 8px;font-weight:400;line-height:1;display:inline-flex}.case-file-title-action:hover{color:var(--ink);background:var(--surface-2)}.case-file-title-action:active{transform:translateY(1px)}.case-file-title-action:focus-visible{box-shadow:0 0 0 2px var(--surface-2)}.case-file-actions{flex-wrap:wrap;gap:6px;display:flex}.case-file-actions .case-file-title-action.is-danger{color:var(--error)}.case-file-actions .case-file-title-action.is-danger:hover{color:var(--error);background:var(--error)}@supports (color:color-mix(in lab,red,red)){.case-file-actions .case-file-title-action.is-danger:hover{background:color-mix(in oklch,var(--error) 9%,var(--white))}}.case-file-rename-note{color:var(--faint);font-size:var(--detail-type-caption);margin:9px 0 0;line-height:1.45}.case-file-rename-note.is-missing{color:var(--error)}.case-intro>p{width:100%;max-width:none;color:var(--muted);font-size:var(--detail-type-body);text-wrap:pretty;margin:15px 0 18px;line-height:1.55}.case-visual-type-source{min-width:0;font-size:var(--detail-type-caption);justify-content:space-between;align-items:baseline;gap:12px;margin-top:15px;display:flex}.case-visual-type-source>div{align-items:baseline;gap:6px;min-width:0;display:flex}.case-visual-type-source span,.case-visual-type-source small{color:var(--muted)}.case-visual-type-source strong{min-width:0;font-size:var(--detail-type-body);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.case-visual-type-source small{font-size:inherit;flex:none;margin-left:auto}.case-visual-type-source+p{margin-top:8px}.keyword-list{flex-wrap:wrap;gap:5px;display:flex}.keyword-list button{color:#383838;background:var(--surface);font-size:var(--detail-type-caption);border-radius:3px;padding:6px 8px}.keyword-list button:hover{color:var(--accent-ink);background:var(--accent-soft)}.source-link-section{padding:2px 0 var(--inspector-section-gap)}.source-link-control{background:var(--surface);border-radius:3px;grid-template-columns:minmax(0,1fr) auto;height:34px;display:grid}.source-link-control input{min-width:0;font-size:var(--detail-type-body);background:0 0;border:0;padding:0 9px}.source-link-control:focus-within{box-shadow:0 0 0 2px var(--accent-soft-strong);background:var(--white)}.source-link-control a{width:34px;height:34px;color:var(--muted);border-radius:3px;place-items:center;display:grid}.source-link-control a:hover{color:var(--accent-ink);background:var(--accent-soft)}.completed-source-link{color:#333;background:var(--surface);min-width:0;min-height:38px;font-size:var(--detail-type-body);border-radius:3px;align-items:center;gap:9px;padding:0 10px;text-decoration:none;display:flex}.completed-source-link span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.completed-source-link svg{color:var(--muted);flex:none}.completed-source-link:hover{color:var(--ink);background:var(--surface-2)}.completed-source-link.is-invalid{width:100%;color:var(--muted);text-align:left}.analysis-section-title{padding-bottom:var(--inspector-block-gap);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.analysis-section-title h2{font-size:var(--detail-type-section);align-items:center;gap:6px;margin:0;font-weight:500;display:inline-flex}.analysis-section-title span{color:var(--muted);font-size:var(--detail-type-caption)}.analysis-section-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.analysis-section-title>button,.analysis-section-actions button{background:var(--surface);font-size:var(--detail-type-caption);border-radius:3px;align-items:center;gap:5px;padding:6px 7px;display:inline-flex}.analysis-section-title>button:hover,.analysis-section-actions button:hover{color:var(--accent-ink);background:var(--accent-soft)}.analysis-section-actions svg.is-spinning{animation:.9s linear infinite settings-spin}.analysis-techniques>.analysis-section-title{align-items:flex-start}.palette-section{padding:2px 0 var(--inspector-section-gap)}.palette-swatches{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.palette-swatch{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.palette-color-wrap{aspect-ratio:1.45;width:100%;margin-bottom:3px;position:relative}.palette-color{border-radius:3px;width:100%;height:100%;box-shadow:inset 0 0 0 1px #0b0b0b14}.palette-swatch>span{min-width:0;font-size:var(--detail-type-caption);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.palette-swatch>small{color:var(--muted);font-size:var(--detail-type-caption);font-variant-numeric:tabular-nums;white-space:nowrap}.palette-similar-action{width:26px;height:26px;color:var(--ink);opacity:0;pointer-events:none;transition:opacity .16s var(--ease),transform .18s var(--ease),background .16s var(--ease);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border-radius:5px;place-items:center;display:grid;position:absolute;top:5px;right:5px;transform:translateY(-2px);box-shadow:0 2px 6px #12121224}.palette-swatch:hover .palette-similar-action,.palette-similar-action:focus-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.palette-similar-action:hover{background:var(--white)}@media(hover:none){.palette-similar-action{opacity:.82;pointer-events:auto;transform:none}}.sampled-color{background:var(--surface);width:100%;height:32px;font-size:var(--detail-type-caption);border-radius:3px;align-items:center;gap:7px;margin-top:8px;padding:0 8px;display:flex}.sampled-color i{border-radius:2px;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0b0b0b1a}.sampled-color span{margin-right:auto}.organization-section{padding:0}.assignment-group{padding:2px 0 var(--inspector-section-gap)}.assignment-chips{flex-wrap:wrap;gap:5px;margin-bottom:8px;display:flex}.assignment-chips button{max-width:100%;min-height:27px;color:var(--muted);background:var(--surface);font-size:var(--detail-type-caption);text-overflow:ellipsis;white-space:nowrap;border-radius:3px;padding:0 8px;overflow:hidden}.assignment-chips button:hover{color:var(--ink);background:var(--surface-2)}.assignment-chips button.is-selected{color:var(--white);background:var(--accent)}.assignment-create{background:var(--surface);border-radius:4px;align-items:center;min-height:38px;display:flex}.assignment-create:focus-within{box-shadow:0 0 0 2px var(--accent-soft-strong);background:var(--white)}.assignment-create input{width:100%;min-width:0;min-height:38px;font-size:var(--detail-type-body);background:0 0;border:0;padding:0 10px}.analysis-techniques{padding:2px 0 var(--inspector-section-gap)}.analysis-technique{border-top:1px solid var(--divider)}.analysis-technique:last-child{border-bottom:1px solid var(--divider)}.analysis-technique>button{text-align:left;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:68px;display:grid}.analysis-technique>button>span{color:var(--muted);font-size:var(--detail-type-caption)}.analysis-technique>button>div{flex-direction:column;gap:4px;min-width:0;display:flex}.analysis-technique strong{font-size:var(--detail-type-body);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.analysis-technique small{color:var(--muted);font-size:var(--detail-type-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.analysis-technique>button>svg{color:var(--faint);transition:transform .19s var(--ease)}.analysis-technique.is-active>button>svg{transform:rotate(90deg)}.analysis-technique.is-active>button>span{color:var(--ink)}.technique-detail{animation:technique-in .18s var(--ease) both;padding:0 0 18px 36px}@keyframes technique-in{0%{opacity:0;transform:translateY(-4px)}}.technique-detail p{color:#3d3d3d;font-size:var(--detail-type-body);margin:0 0 12px;line-height:1.55}.technique-detail dl{margin:0 0 13px}.technique-detail dt{color:var(--muted);font-size:var(--detail-type-caption);margin-bottom:3px}.technique-detail dd{font-size:var(--detail-type-caption);margin:0;line-height:1.45}.technique-detail button{background:var(--surface);font-size:var(--detail-type-caption);border-radius:4px;align-items:center;gap:6px;padding:7px 8px;display:inline-flex}.technique-edit-fields{gap:7px;margin-bottom:10px;display:grid}.technique-edit-fields label{color:var(--muted);font-size:var(--detail-type-caption);gap:4px;display:grid}.technique-edit-fields input,.technique-edit-fields textarea{width:100%;color:var(--ink);background:var(--surface);font-size:var(--detail-type-caption);resize:vertical;border:0;border-radius:3px;padding:7px 8px;line-height:1.4}.technique-edit-fields input:focus,.technique-edit-fields textarea:focus{box-shadow:0 0 0 1px var(--ink);background:var(--white)}.technique-actions{flex-wrap:wrap;gap:4px;display:flex}.technique-actions button:last-child{color:var(--error)}.design-prompt-section{padding:2px 0 var(--inspector-section-gap)}.design-prompt-intro{margin:0 0 var(--inspector-block-gap);color:var(--muted);font-size:var(--detail-type-body);line-height:1.5}.prompt-format-control{margin-bottom:var(--inspector-block-gap);background:var(--surface);border-radius:4px;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:2px;display:grid}.prompt-format-control button{min-width:0;min-height:30px;color:var(--muted);font-size:var(--detail-type-caption);transition:color .16s var(--ease),background .16s var(--ease);border-radius:3px;padding-inline:5px;line-height:1.2}.prompt-format-control button:hover{color:var(--ink)}.prompt-format-control button.is-active{color:var(--accent-ink);background:var(--white);box-shadow:0 1px 5px #2929291a}.design-prompt-text{width:100%;min-height:174px;max-height:300px;color:var(--ink);background:var(--surface);font-family:inherit;font-size:var(--detail-type-caption);resize:vertical;border:0;border-radius:4px;padding:10px;line-height:1.55;display:block}.design-prompt-text:focus{box-shadow:0 0 0 2px var(--accent-soft-strong);background:var(--white);outline:none}.design-prompt-keywords{gap:var(--inspector-inline-gap);margin-top:var(--inspector-block-gap);flex-wrap:wrap;display:flex}.design-prompt-keywords span{color:var(--muted);background:var(--surface);font-size:var(--detail-type-caption);border-radius:3px;padding:4px 6px;line-height:1.2}.design-prompt-actions{gap:var(--inspector-control-gap);margin-top:var(--inspector-block-gap);flex-wrap:wrap;display:flex}.design-prompt-actions button{background:var(--surface);min-height:32px;font-size:var(--detail-type-caption);border-radius:3px;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.design-prompt-actions button:hover{color:var(--accent-ink);background:var(--accent-soft)}.case-images-manager{padding:2px 0 var(--inspector-section-gap)}.current-image-actions{flex-wrap:wrap;gap:5px;display:flex}.current-image-actions button{background:var(--surface);min-height:30px;font-size:var(--detail-type-caption);border-radius:3px;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.current-image-actions button.is-active{color:var(--white);background:var(--accent)}.optional-note{padding:2px 0 var(--inspector-section-gap)}.optional-note textarea{field-sizing:content;background:var(--surface);width:100%;min-height:112px;max-height:360px;font-size:var(--detail-type-body);resize:vertical;border:0;border-radius:4px;padding:10px;line-height:1.55;display:block}.assignment-create input::placeholder,.optional-note textarea::placeholder,.source-link-control input::placeholder{color:var(--input-placeholder);font-size:var(--detail-type-body);opacity:1;font-weight:400}.optional-note textarea:focus{box-shadow:0 0 0 2px var(--accent-soft-strong);background:var(--white)}.completed-note{color:#333;background:var(--surface);border-radius:4px;padding:10px}.completed-note p{font-size:var(--detail-type-body);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;line-height:1.65}.field-empty-action{width:100%;min-height:38px;color:var(--muted);background:var(--surface);font-size:var(--detail-type-body);text-align:left;border-radius:3px;justify-content:flex-start;align-items:center;gap:7px;padding:0 10px;display:flex}.field-empty-action:hover{color:var(--ink);background:var(--surface-2)}.field-editor-actions{justify-content:flex-end;align-items:center;gap:var(--inspector-control-gap);margin-top:var(--inspector-control-gap);display:flex}.field-editor-actions>span{color:var(--error);font-size:var(--detail-type-caption);margin-right:auto}.field-editor-actions button{min-height:30px;color:var(--muted);background:var(--surface);font-size:var(--detail-type-caption);border-radius:3px;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.field-editor-actions button:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}.field-editor-actions button.is-primary{color:var(--white);background:var(--ink)}.field-editor-actions button.is-primary:hover:not(:disabled){color:var(--white);background:#1f1f1f}.related-cases{padding:2px 0 var(--inspector-section-gap)}.related-cases>div:last-child{display:grid}.related-cases>div:last-child button{border-top:1px solid var(--divider);text-align:left;grid-template-columns:52px minmax(0,1fr) auto;gap:3px 10px;padding:10px 0;display:grid}.related-case-card img{object-fit:cover;grid-row:1/span 3;width:52px;height:44px}.related-cases button span{color:var(--muted);font-size:var(--detail-type-caption)}.related-cases button strong{font-size:var(--detail-type-body);font-weight:500}.related-cases button small{color:var(--muted);font-size:var(--detail-type-caption);grid-area:1/3/span 3;align-self:center}.related-cases button:hover strong{text-underline-offset:3px;text-decoration:underline}@keyframes panel-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.gallery-view,.collection-page,.search-view,.settings-view,.information-view{height:100%;padding:calc(var(--nav-height) + 36px) var(--page-gutter) 84px;background:var(--canvas);overflow-y:auto}.view-heading{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:38px;display:flex}.view-heading>div:first-child{flex-direction:column;gap:10px;min-width:0;display:flex}.view-heading h1,.search-hero h1{font-size:var(--type-page);letter-spacing:-.04em;margin:0;font-weight:500;line-height:.98}.view-heading p{color:var(--muted);font-size:var(--type-caption);margin:0}.view-heading p strong{color:var(--ink);font-weight:500}.gallery-view .view-heading p{align-items:center;min-height:36px;display:flex}.gallery-tools{align-items:center;gap:8px;display:flex}.compact-select,.density-control{background:var(--white);border-radius:var(--radius-control);height:36px;box-shadow:0 2px 6px #29292914,inset 0 1px 0 var(--white);align-items:center;gap:7px;padding:0 10px;display:flex}.compact-select select{cursor:pointer;font-size:var(--type-caption);background:0 0;border:0}.gallery-filter-dropdown{min-width:0;position:relative}.gallery-filter-trigger{cursor:pointer;min-width:0;max-width:240px}.gallery-filter-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:176px;font-size:var(--type-caption);overflow:hidden}.gallery-filter-trigger>svg:last-child{color:var(--muted);transition:transform .18s var(--ease);flex:none}.gallery-filter-trigger>svg:last-child.is-open{transform:rotate(180deg)}.gallery-filter-menu{width:max(220px,100%);top:calc(100% + 8px)}.gallery-sort-dropdown{min-width:0;display:none;position:relative}.gallery-sort-trigger{cursor:pointer;width:100%;min-width:0}.gallery-sort-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--type-caption);overflow:hidden}.gallery-sort-trigger>svg:last-child{color:var(--muted);transition:transform .18s var(--ease);flex:none;margin-left:auto}.gallery-sort-trigger>svg:last-child.is-open{transform:rotate(180deg)}.gallery-sort-menu{left:auto;right:0}.gallery-folder-navigation{align-items:center;gap:6px;min-height:40px;margin:-12px 0 24px;display:flex}.gallery-folder-navigation .folder-breadcrumbs{border-radius:var(--radius-control);background:#eeeeeeb8;padding:4px}.gallery-folder-navigation .folder-breadcrumbs>span{flex:0 var(--gallery-breadcrumb-shrink,1) auto;min-width:0}.gallery-folder-navigation .folder-breadcrumbs>span:last-child{flex-grow:1}.gallery-folder-navigation .folder-breadcrumbs>span:only-child{flex:100%;width:100%}.gallery-folder-navigation .folder-breadcrumbs button{text-align:left;flex:auto;max-width:none}.gallery-folder-navigation .folder-breadcrumbs>span:only-child>button{width:100%;max-width:100%}.gallery-content{--gallery-columns:6;--gallery-column-gap:64px;--gallery-row-gap:64px}.gallery-content.density-4{--gallery-columns:4}.gallery-content.density-6{--gallery-columns:6}.gallery-content.density-8{--gallery-columns:8}.gallery-content-section+.gallery-content-section{margin-top:104px}.gallery-content-section>h2{color:var(--muted);font-size:var(--type-caption);margin:0 0 20px;font-weight:500}.gallery-folder-grid{grid-template-columns:repeat(var(--gallery-columns),minmax(0,1fr));column-gap:var(--gallery-column-gap);row-gap:var(--gallery-row-gap);display:grid}.gallery-folder-grid.is-virtualized{contain:layout style;min-height:1px;display:block;position:relative}.gallery-folder-grid.is-virtualized .gallery-folder-card-shell{contain:layout paint style;margin:0;position:absolute}.gallery-folder-card-shell{aspect-ratio:224/190;align-self:start;min-width:0;position:relative}.gallery-folder-card-shell .gallery-folder-card{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.gallery-folder-card{aspect-ratio:224/190;align-self:start;min-width:0;height:auto}.gallery-folder-card .folder-card__meta{visibility:hidden}.gallery-folder-meta{z-index:6;pointer-events:none;align-content:center;gap:2px;min-width:0;height:clamp(48px,28%,54px);display:grid;position:absolute;bottom:max(8px,7%);left:max(12px,7%);right:max(32px,18%)}.gallery-folder-title-line{max-height:30px;color:var(--ink);font-size:var(--type-caption);overflow-wrap:anywhere;font-weight:500;line-height:15px;display:block;overflow:hidden}.gallery-folder-meta>small{color:var(--muted);font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;line-height:15px;overflow:hidden}.gallery-folder-rename{width:18px;height:18px;color:var(--muted);box-shadow:none;opacity:0;pointer-events:none;vertical-align:-4px;transition:opacity .16s var(--ease),color .16s var(--ease),background .16s var(--ease);background:0 0;border-radius:4px;place-items:center;margin-left:4px;padding:0;display:inline-grid}.gallery-folder-card-shell:hover .gallery-folder-rename,.gallery-folder-card-shell:focus-within .gallery-folder-rename{opacity:1;pointer-events:auto}.gallery-folder-rename:hover{color:var(--ink);background:0 0}.density-control{gap:2px;padding-right:4px}.density-control>svg{margin-right:3px}.density-control button{width:27px;height:27px;color:var(--muted);font-size:var(--type-caption);border-radius:3px;place-items:center;display:grid}.density-control button:hover{color:var(--ink);background:var(--surface-2)}.density-control button.is-active{color:var(--white);background:var(--accent)}.batch-bar{z-index:5;color:var(--ink);background:var(--glass-surface);border-radius:var(--radius-control);box-shadow:var(--shadow-float);font-size:var(--type-caption);-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);align-items:center;gap:8px;margin:-10px 0 20px;padding:8px 10px;display:flex;position:sticky;top:0}.batch-bar span{margin-right:auto}.batch-bar button{color:var(--muted);border-radius:4px;align-items:center;gap:5px;padding:6px 8px;display:inline-flex}.batch-bar button:hover{color:var(--accent-ink);background:var(--accent-soft)}.batch-bar button.is-danger{color:var(--error)}.batch-bar button.is-danger:hover{color:var(--error);background:var(--error)}@supports (color:color-mix(in lab,red,red)){.batch-bar button.is-danger:hover{background:color-mix(in oklch,var(--error) 9%,var(--white))}}.map-batch-bar{z-index:7;top:auto;bottom:var(--map-bottom-inset);width:max-content;height:var(--map-bottom-cell-height);max-width:calc(100vw - 32px);margin:0;padding:5px 8px;position:absolute;left:50%;transform:translate(-50%)}.map-batch-bar button{height:30px;padding-block:0}.map-batch-bar span{white-space:nowrap}.map-batch-bar span strong{color:var(--ink);font-weight:500}.gallery-grid{column-count:var(--gallery-columns);column-gap:var(--gallery-column-gap);width:100%}.gallery-item{break-inside:avoid;margin:0 0 var(--gallery-row-gap);animation:gallery-item-in .26s var(--ease) both;position:relative}.gallery-grid.is-virtualized{column-count:initial;contain:layout style;column-gap:0;min-height:1px;position:relative}.gallery-grid.is-virtualized .gallery-item{contain:layout paint style;margin:0;animation:none;position:absolute}.gallery-grid.is-virtualized .gallery-item.is-entering{animation:gallery-item-in .26s var(--ease) both}.gallery-grid.is-virtualized .gallery-caption{height:42px}@keyframes gallery-item-in{0%{opacity:0;transform:translateY(5px)}}.gallery-image-button{background:var(--surface);border-radius:var(--radius-control);width:100%;transition:transform .24s var(--ease),box-shadow .24s var(--ease);display:block;position:relative;overflow:hidden}.gallery-image-button img{object-fit:cover;width:100%;height:100%;transition:transform .42s var(--ease),opacity .18s var(--ease);display:block}.gallery-image-button.is-long-image,.gallery-image-button.is-wide-image{background:var(--surface-2)}.gallery-image-button.is-long-image img,.gallery-image-button.is-wide-image img{object-fit:contain}.gallery-image-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #2929291a}.gallery-image-button:hover img{transform:scale(1.018)}.gallery-image-button.is-long-image:hover img,.gallery-image-button.is-wide-image:hover img{transform:none}.gallery-placeholder{background:var(--surface);width:100%;height:100%;display:block}.gallery-item.is-selected .gallery-image-button{box-shadow:var(--shadow-selection)}.gallery-open-cue{z-index:1;color:var(--white);font-size:var(--type-caption);opacity:0;transition:opacity .18s var(--ease),transform .22s var(--ease);background:#060606a8;border-radius:3px;padding:5px 7px;position:absolute;bottom:8px;left:8px;transform:translateY(3px)}.gallery-image-button:hover .gallery-open-cue{opacity:1;transform:translateY(0)}.gallery-image-button:hover .media-duration-badge{opacity:0}.select-image{z-index:2;color:#0000;opacity:0;pointer-events:none;width:26px;height:26px;transition:opacity .16s var(--ease),background .16s var(--ease),color .16s var(--ease);background:#0606063d;border:1px solid oklch(100% 0 0/.72);border-radius:4px;place-items:center;display:grid;position:absolute;top:8px;left:8px}.select-image span{background:var(--white);border-radius:50%;width:5px;height:5px}.gallery-item:hover .select-image,.gallery-item.is-selected .select-image,.select-image:focus-visible{opacity:1;pointer-events:auto}.gallery-item.is-selected .select-image{color:var(--white);background:var(--accent);border-color:var(--accent)}.gallery-favorite-mark{z-index:2;width:25px;height:25px;color:var(--white);pointer-events:none;background:#06060652;border-radius:4px;place-items:center;display:grid;position:absolute;top:9px;right:9px}.gallery-caption{flex-direction:column;gap:4px;min-width:0;padding-top:9px;display:flex}.gallery-caption strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--type-caption);font-weight:500;overflow:hidden}.gallery-caption span{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:var(--type-caption);overflow:hidden}.collection-page>:not(.view-heading){max-width:1180px}.collection-group+.collection-group{margin-top:34px}.collection-group>h2{color:var(--muted);font-size:var(--type-caption);margin:0 0 12px;font-weight:500}.collection-list{border-top:1px solid var(--divider)}.collection-list>button,.collection-row{border-bottom:1px solid var(--divider);text-align:left;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 2px;display:flex}.collection-list>button:hover,.collection-row:hover{background:var(--white)}.collection-list span,.collection-main span{flex-direction:column;gap:4px;display:flex}.collection-list strong{font-size:var(--type-body);font-weight:500}.collection-list small{color:var(--muted);font-size:var(--type-caption)}.folder-collection-row{transition:color .14s var(--ease),background .14s var(--ease)}.folder-collection-row.is-root{font-weight:500}.folder-collection-row>svg{flex:none}.folder-collection-row>span{flex:auto;min-width:0}.folder-collection-row strong,.folder-collection-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.folder-collection-empty{color:var(--muted);font-size:var(--type-caption);border-bottom:1px solid var(--divider);margin:0;padding:18px 2px}.create-collection{gap:8px;margin-bottom:28px;display:flex}.create-collection input{border-radius:var(--radius-control);background:var(--white);width:min(360px,100%);height:38px;font-size:var(--type-caption);border:0;padding:0 11px;box-shadow:0 2px 6px #29292914}.create-collection input:focus{box-shadow:0 0 0 2px var(--accent-soft-strong),0 2px 6px #29292914}.create-collection button,.settings-actions button,.button-label{background:var(--ink);min-height:38px;color:var(--white);font-size:var(--type-caption);border-radius:4px;align-items:center;gap:7px;padding:0 12px;display:inline-flex}.collection-notice{background:var(--white);border-radius:var(--radius-control);min-height:42px;font-size:var(--type-caption);justify-content:space-between;align-items:center;gap:16px;margin:-14px 0 18px;padding:8px 10px;display:flex;box-shadow:0 2px 6px #29292914}.collection-notice>div{gap:4px;display:flex}.collection-notice button{background:var(--white);min-height:28px;font-size:var(--type-caption);border-radius:3px;padding:0 7px}.collection-notice button:hover{background:var(--surface-2)}.collection-notice.is-danger>div button:last-child{color:var(--white);background:var(--error)}.collection-row{justify-content:space-between}.collection-main{text-align:left;flex:1;min-width:0}.collection-main>span{min-width:0}.collection-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collection-row>input{background:var(--surface);border:0;flex:1;height:34px;padding:0 9px}.row-actions{flex:none;gap:3px;display:flex}.row-actions button{width:30px;height:30px;color:var(--muted);border-radius:4px;place-items:center;display:grid}.row-actions button:hover,.row-actions button.is-active{color:var(--ink);background:var(--surface)}.row-actions button:last-child{color:var(--error)}.row-actions button:last-child:hover{color:var(--error);background:var(--surface)}.empty-view{min-height:180px;color:var(--muted);font-size:var(--type-caption);place-items:center;display:grid}.search-hero{max-width:1100px;padding:0 0 40px}.search-hero h1{margin-bottom:32px}.search-hero label{background:var(--white);border-radius:var(--radius-control);height:54px;box-shadow:0 2px 6px #29292914,inset 0 1px 0 var(--white);transition:box-shadow .18s var(--ease);align-items:center;gap:12px;padding:0 16px;display:flex}.search-hero label:focus-within{box-shadow:0 0 0 2px var(--accent-soft-strong),0 2px 6px #29292914}.search-hero input{width:100%;font-size:var(--type-section);background:0 0;border:0}.search-result-list{border-top:1px solid var(--divider)}.search-result-list,.search-scope{max-width:1100px}.search-result-list article{border-bottom:1px solid var(--divider);min-height:84px;transition:background .16s var(--ease);grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.search-result-list article:hover{background:var(--white)}.search-result-thumb{background:var(--surface);object-fit:cover;width:72px;height:54px;display:block}.search-result-main{text-align:left;flex-direction:column;gap:5px;min-width:0;display:flex}.search-result-main strong{font-size:var(--type-body);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.search-result-main span,.search-result-main small{color:var(--muted);font-size:var(--type-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-result-list article>div{gap:6px;display:flex}.search-result-list article>div button{background:var(--white);font-size:var(--type-caption);border-radius:4px;padding:7px 9px}.search-result-list article>div button:hover{color:var(--accent-ink);background:var(--accent-soft)}.search-scope{color:var(--muted);font-size:var(--type-caption);padding:20px 0}.information-layout{grid-template-columns:180px minmax(0,720px);align-items:start;gap:clamp(40px,6vw,96px);width:min(1040px,100%);display:grid}.information-index{top:calc(var(--nav-height) + 24px);min-width:0;color:var(--muted);font-size:var(--type-caption);flex-direction:column;gap:8px;display:flex;position:sticky}.information-index button{width:100%;min-height:34px;color:var(--muted);text-align:left;transition:color .15s var(--ease),background .15s var(--ease);border-radius:4px;padding:7px;line-height:1.5}.information-index button:hover{color:var(--ink);background:var(--white)}.information-index button:focus-visible{color:var(--ink);background:var(--white);box-shadow:0 0 0 2px var(--surface-strong)}.information-index .information-index-root{color:var(--ink);font-weight:500}.information-index-children{border-left:1px solid var(--divider);gap:4px;margin-left:7px;padding-left:12px;display:grid}.information-document{width:100%;min-width:0;max-width:720px;padding-bottom:30px}.information-heading{width:100%;max-width:720px;scroll-margin-top:calc(var(--nav-height) + 24px);margin-bottom:50px}.information-heading h1{font-size:var(--type-page);letter-spacing:-.04em;margin:0;font-weight:500;line-height:.98}.information-document .information-heading p{width:100%;max-width:720px;color:var(--muted);font-size:var(--type-caption);margin:18px 0 0;line-height:1.55}.information-document section{width:100%;max-width:720px;scroll-margin-top:calc(var(--nav-height) + 24px)}.information-document section+section{margin-top:46px}.information-document h2{letter-spacing:-.02em;margin:0 0 12px;font-size:1.25rem;font-weight:500;line-height:1.25}.information-document .information-lead h2{width:100%;max-width:720px;font-size:var(--type-title);letter-spacing:-.04em;margin-bottom:18px;font-weight:400;line-height:1.08}.information-document p,.information-document li,.information-facts dt,.information-facts dd{color:#3d3d3d;font-size:var(--type-body);line-height:1.68}.information-document p{margin:0}.information-document p+p{margin-top:12px}.information-document ul{gap:10px;margin:0;padding-left:18px;display:grid}.information-document .information-bullet-list{padding-left:20px;list-style:outside}.information-document .information-bullet-list li::marker{color:var(--faint)}.information-document strong{color:var(--ink);font-weight:500}.information-document code{color:var(--ink);background:var(--surface-2);border-radius:2px;padding:1px 3px;font-family:inherit}.information-document a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);text-underline-offset:3px}.information-document a:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.information-date{color:var(--muted)!important;font-size:var(--type-caption)!important;margin-bottom:32px!important}.information-facts{border-top:1px solid var(--divider);margin:0}.information-facts div{border-bottom:1px solid var(--divider);grid-template-columns:132px minmax(0,1fr);gap:18px;padding:12px 0;display:grid}.information-facts dt{color:var(--ink);font-weight:500}.information-facts dd{margin:0}.help-question-list{border-top:1px solid var(--divider)}.help-question{border-bottom:1px solid var(--divider)}.help-question summary{min-height:58px;color:var(--ink);font-size:var(--type-body);cursor:pointer;grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:18px;padding:13px 0;font-weight:500;line-height:1.45;list-style:none;display:grid}.help-question summary::-webkit-details-marker{display:none}.help-question summary::marker{content:""}.help-question summary:focus-visible{box-shadow:0 0 0 2px var(--surface-strong);border-radius:4px}.help-question-toggle{width:30px;height:30px;color:var(--muted);justify-self:end;place-items:center;display:grid}.help-question-toggle svg{transition:transform .22s var(--ease)}.help-question[open] .help-question-toggle svg{transform:rotate(45deg)}.help-answer{padding:0 48px 18px 0}.help-answer p{color:var(--muted)}.public-information-shell{background:var(--canvas);height:100%;position:relative;overflow:hidden}.public-information-header{z-index:5;height:var(--nav-height);pointer-events:none;align-items:center;padding:0 14px;display:flex;position:absolute;top:0;left:0;right:0}.public-information-header>button,.public-information-header nav{pointer-events:auto}.public-information-header>.wordmark{border-radius:8px;min-height:38px;padding:0 10px}.public-information-header>.wordmark:hover{background:var(--white)}.settings-groups{--settings-content-width:608px;gap:50px;max-width:1040px;display:grid}.settings-groups section{border-top:1px solid var(--divider);grid-template-columns:180px 1fr;gap:0 24px;padding-top:20px;display:grid}.settings-groups section>:not(h2){width:100%;max-width:var(--settings-content-width);justify-self:start}.settings-groups h2{font-size:var(--type-body);margin:0;font-weight:500}.settings-groups p{max-width:var(--settings-content-width);color:var(--muted);font-size:var(--type-caption);margin:0;line-height:1.55}.settings-groups code{color:var(--ink);background:var(--surface);border-radius:2px;padding:1px 3px;font-family:inherit}.settings-groups dl{margin:0}.settings-groups dl div{font-size:var(--type-caption);grid-template-columns:130px minmax(0,1fr);padding:5px 0;display:grid}.settings-groups dt{color:var(--muted)}.settings-groups dd{overflow-wrap:anywhere;min-width:0;margin:0}.settings-language-content{min-width:0}.settings-language-options{background:var(--surface);border-radius:6px;align-items:center;gap:4px;width:fit-content;margin-top:14px;padding:4px;display:inline-flex}.settings-language-options button{min-height:34px;color:var(--muted);font-size:var(--type-caption);background:0 0;border-radius:4px;padding:0 13px}.settings-language-options button:hover{color:var(--ink);background:var(--white)}.settings-language-options button.is-active{color:var(--ink);background:var(--white);box-shadow:0 2px 6px #29292914}.settings-groups section>dl+p,.settings-groups section>div>p+dl{margin-top:14px}.library-settings-copy{grid-column:2}.settings-actions{flex-wrap:wrap;grid-column:2;align-items:flex-start;gap:8px;margin-top:14px;display:flex}.settings-actions button,.button-label{background:var(--white);color:var(--ink);box-shadow:0 2px 6px #29292914}.settings-actions button:hover,.button-label:hover{color:var(--accent-ink);background:var(--accent-soft)}.button-label{cursor:pointer}.button-label input{display:none}.settings-actions .danger-action{color:var(--error)}.settings-actions .danger-action:hover{color:var(--error);background:var(--error)}@supports (color:color-mix(in lab,red,red)){.settings-actions .danger-action:hover{background:color-mix(in oklch,var(--error) 9%,var(--white))}}.settings-action-note{grid-column:2;color:var(--faint)!important;margin:8px 0 0!important}.settings-operation-status{grid-column:2;color:var(--ink)!important;margin:8px 0 0!important}.settings-actions+.settings-action-note,.settings-actions+.settings-operation-status{margin-top:14px!important}.settings-operation-status.is-error{color:var(--error)!important}.settings-danger-section{margin-top:4px}.library-health-content{min-width:0}.library-health-content>dl{margin-top:14px;margin-bottom:0}.library-health-content>dl dd{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.library-health-actions{grid-column:auto;margin-top:14px}.library-health-actions .settings-icon-action{justify-content:center;width:38px;padding:0}.settings-actions svg.is-spinning{animation:.9s linear infinite settings-spin}@keyframes settings-spin{to{transform:rotate(360deg)}}.settings-confirm-modal{z-index:85;place-items:center;padding:16px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.settings-confirm-backdrop{cursor:default;width:100%;height:100%;animation:detail-backdrop-in .16s var(--ease) both;background:#02020285;position:absolute;top:0;right:0;bottom:0;left:0}.modal-backdrop:disabled,.settings-confirm-backdrop:disabled{opacity:1}.settings-confirm-surface{border-radius:var(--radius-panel);background:var(--white);width:min(440px,100vw - 32px);animation:settings-confirm-in .19s var(--ease) both;position:relative;overflow:hidden;box-shadow:0 4px 8px #1f1f1f29}@keyframes settings-confirm-in{0%{opacity:0;transform:translateY(10px)scale(.985)}}.settings-confirm-symbol{width:32px;height:32px;color:var(--error);background:var(--error);border-radius:50%;place-items:center;margin:20px 20px 0;display:grid}@supports (color:color-mix(in lab,red,red)){.settings-confirm-symbol{background:color-mix(in oklch,var(--error) 10%,var(--white))}}.settings-confirm-surface header{padding:20px 20px 8px}.settings-confirm-modal.is-destructive .settings-confirm-surface header{padding-top:14px}.settings-confirm-surface h2{font-size:var(--type-section);letter-spacing:-.025em;margin:0;font-weight:500}.settings-confirm-body{padding:0 20px 22px}.settings-confirm-body p{max-width:52ch;color:var(--muted);font-size:var(--type-caption);margin:8px 0 0;line-height:1.55}.settings-confirm-body strong{color:var(--ink);font-weight:500}.settings-confirm-body code{color:var(--ink);background:var(--surface);border-radius:2px;padding:1px 3px;font-family:inherit}.settings-confirm-body span{color:var(--error);font-size:var(--type-caption);margin-top:10px;display:block}.settings-confirm-surface footer{border-top:1px solid var(--divider);justify-content:flex-end;align-items:center;gap:7px;min-height:62px;padding:0 16px;display:flex}.settings-confirm-surface footer button{min-height:36px;font-size:var(--type-caption);border-radius:4px;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.settings-confirm-surface footer button:first-child{color:var(--muted);background:var(--surface)}.settings-confirm-surface footer button:first-child:hover{color:var(--ink);background:var(--surface-2)}.settings-confirm-surface footer .danger-action{color:var(--white);background:var(--error)}.settings-confirm-surface footer .danger-action:hover{opacity:.88}.settings-confirm-surface footer .primary-action,.settings-confirm-surface footer .primary-action:hover{color:var(--white);background:var(--ink)}@supports (color:color-mix(in lab,red,red)){.settings-confirm-surface footer .primary-action:hover{background:color-mix(in oklch,var(--ink) 88%,var(--white))}}.enhanced-recognition-symbol{width:32px;height:32px;color:var(--ink);background:var(--surface);border-radius:50%;place-items:center;margin:20px 20px 0;display:grid}.enhanced-recognition-modal .settings-confirm-surface header{padding-top:14px}.settings-confirm-body .enhanced-recognition-meta{color:var(--faint);font-size:var(--type-caption);margin-top:14px}.settings-confirm-body .enhanced-recognition-error{color:var(--error);margin-top:12px}.settings-recognition-content{min-width:0}.settings-recognition-content>dl{margin-top:14px}.settings-recognition-content>.settings-actions{grid-column:auto}.settings-recognition-progress{width:100%;max-width:100%;font-size:var(--type-caption);gap:7px;margin-top:14px;display:grid}.settings-recognition-progress>div{color:var(--muted);font-size:var(--type-caption);justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-recognition-progress strong{color:var(--ink);flex:none;font-weight:500}.settings-recognition-progress-track{background:var(--surface-2);border-radius:999px;width:100%;height:3px;overflow:hidden}.settings-recognition-progress-track i{border-radius:inherit;background:var(--ink);transform-origin:0;width:100%;height:100%;transition:transform .18s var(--ease);display:block}.settings-recognition-note{color:var(--faint)!important;margin-top:14px!important}.trash-confirm-preference{min-height:36px;color:var(--ink);font-size:var(--type-caption);cursor:pointer;align-items:center;gap:9px;margin-top:16px;display:flex}.trash-confirm-preference input{width:16px;height:16px;accent-color:var(--ink);margin:0}.trash-confirm-preference span{color:inherit;margin:0}.settings-confirm-body .trash-confirm-error{color:var(--error);margin-top:10px;line-height:1.45}.bulk-analysis-modal{z-index:86;place-items:center;padding:16px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.bulk-analysis-surface{border-radius:var(--radius-panel);background:var(--white);width:min(680px,100vw - 32px);max-height:calc(100vh - 32px);animation:settings-confirm-in .19s var(--ease) both;position:relative;overflow-y:auto;box-shadow:0 8px 18px #1f1f1f29}.bulk-analysis-surface>header{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:0 18px;display:flex}.bulk-analysis-surface>header>div{align-items:center;gap:8px;display:flex}.bulk-analysis-surface h2{font-size:var(--type-section);margin:0;font-weight:500}.bulk-analysis-surface>header>button{width:34px;height:34px;color:var(--muted);border-radius:4px;place-items:center;display:grid}.bulk-analysis-surface>header>button:hover{color:var(--ink);background:var(--surface)}.bulk-analysis-symbol{background:var(--surface);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.bulk-analysis-intro{color:var(--muted);font-size:var(--type-caption);margin:0;padding:20px 20px 0;line-height:1.55}.bulk-analysis-section{border-bottom:1px solid var(--divider);margin:0 20px;padding:20px 0}.bulk-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bulk-section-heading>div{min-width:0}.bulk-section-heading h3{font-size:var(--type-body);margin:0;font-weight:500;line-height:1.35}.bulk-section-heading p{color:var(--muted);font-size:var(--type-caption);margin:4px 0 0;line-height:1.45}.bulk-section-heading>span{color:var(--faint);font-size:var(--type-caption);flex:none}.bulk-mode-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.bulk-mode-row button{min-height:34px;color:var(--muted);background:var(--surface);font-size:var(--type-caption);border-radius:4px;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.bulk-mode-row button:hover{color:var(--ink);background:var(--surface-2)}.bulk-mode-row button.is-active{color:var(--white);background:var(--ink)}.bulk-field-label{color:var(--muted);font-size:var(--type-caption);gap:7px;margin-top:14px;display:grid}.bulk-field-label input,.bulk-add-tag-row input{background:var(--surface);width:100%;height:40px;color:var(--ink);border:0;border-radius:4px;padding:0 11px}.bulk-field-label input::placeholder,.bulk-add-tag-row input::placeholder{color:var(--input-placeholder);font-weight:400}.bulk-inline-note,.bulk-empty-state{color:var(--faint);font-size:var(--type-caption);margin:12px 0 0;line-height:1.45}.bulk-current-tags,.bulk-added-tags{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.bulk-current-tags button,.bulk-added-tags button{background:var(--surface);min-height:31px;color:var(--muted);font-size:var(--type-caption);border-radius:4px;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.bulk-current-tags button:hover,.bulk-added-tags button:hover{color:var(--ink);background:var(--surface-2)}.bulk-current-tags button small{color:var(--faint);font-size:inherit}.bulk-current-tags button.is-removed{color:var(--faint);text-decoration:line-through}.bulk-add-tag-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:14px;display:grid}.bulk-add-tag-row button{background:var(--surface);min-height:40px;color:var(--muted);font-size:var(--type-caption);border-radius:4px;align-items:center;gap:5px;padding:0 11px;display:inline-flex}.bulk-add-tag-row button:not(:disabled):hover{color:var(--ink);background:var(--surface-2)}.bulk-add-tag-row button:disabled{opacity:.45}.bulk-suggestion-list{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.bulk-suggestion-chip-shell{border-radius:4px;min-width:0;max-width:100%;display:inline-flex;position:relative}.bulk-suggestion-chip{min-width:0;max-width:100%;min-height:34px;color:var(--muted);background:var(--surface);font-size:var(--type-caption);transition:color .16s var(--ease),background .16s var(--ease);border-radius:4px;align-items:center;gap:6px;padding:0 30px 0 9px;display:inline-flex}.bulk-suggestion-chip:hover{color:var(--ink);background:var(--surface-2)}.bulk-suggestion-chip>span:not(.bulk-suggestion-state){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.bulk-suggestion-state{opacity:0;width:13px;height:13px;transition:opacity .16s var(--ease);flex:0 0 13px;place-items:center;display:grid}.bulk-suggestion-chip-shell:hover .bulk-suggestion-state,.bulk-suggestion-chip:focus-visible .bulk-suggestion-state,.bulk-suggestion-chip-shell.is-accepted .bulk-suggestion-state{opacity:1}.bulk-suggestion-chip-shell.is-accepted .bulk-suggestion-chip{color:var(--white);background:var(--ink)}.bulk-hide-suggestion{width:27px;height:27px;color:var(--faint);opacity:0;pointer-events:none;transition:opacity .16s var(--ease),color .16s var(--ease),background .16s var(--ease);border-radius:3px;place-items:center;display:grid;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.bulk-suggestion-chip-shell:hover .bulk-hide-suggestion,.bulk-hide-suggestion:focus-visible{opacity:1;pointer-events:auto}.bulk-hide-suggestion:hover{color:var(--ink);background:#0000000f}.bulk-suggestion-chip-shell.is-accepted .bulk-hide-suggestion{color:#ffffffad}.bulk-suggestion-chip-shell.is-accepted .bulk-hide-suggestion:hover{color:var(--white);background:#ffffff24}.bulk-suggestion-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.bulk-suggestion-actions>div{flex-wrap:wrap;gap:6px;display:flex}.bulk-suggestion-actions button{min-height:34px;color:var(--muted);background:var(--surface);font-size:var(--type-caption);border-radius:4px;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.bulk-suggestion-actions button:not(:disabled){color:var(--ink)}.bulk-suggestion-actions button:not(:disabled):hover{color:var(--ink);background:var(--surface-2)}.bulk-suggestion-actions button:disabled{opacity:.45;cursor:default}.bulk-suggestion-actions .bulk-restore-suggestions{color:var(--muted);background:0 0}.bulk-suggestion-range{color:var(--faint);font-size:var(--type-caption);margin:8px 0 0;line-height:1.35}.bulk-analysis-options{gap:4px;padding:16px 20px 20px;display:grid}.bulk-analysis-options label{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:8px;padding:8px 0;display:grid}.bulk-analysis-options input{accent-color:var(--ink);margin:2px 0 0}.bulk-analysis-options span{gap:3px;display:grid}.bulk-analysis-options strong{font-size:var(--type-caption);font-weight:500}.bulk-analysis-options small{color:var(--muted);font-size:var(--type-caption);line-height:1.4}.bulk-analysis-options label.is-disabled{opacity:.48}.bulk-analysis-error{color:var(--error);font-size:var(--type-caption);margin:-8px 20px 18px;line-height:1.45}.bulk-analysis-surface>footer{border-top:1px solid var(--divider);justify-content:flex-end;align-items:center;gap:8px;min-height:64px;padding:0 16px;display:flex}.bulk-analysis-surface>footer button{min-height:36px;color:var(--muted);background:var(--surface);font-size:var(--type-caption);border-radius:4px;padding:0 11px}.bulk-analysis-surface>footer .primary-action{color:var(--white);background:var(--ink)}.add-inspiration-modal{z-index:70;place-items:center;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.modal-backdrop{background:#02020280;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.add-inspiration-surface{border-radius:var(--radius-panel);background:var(--white);width:min(540px,100vw - 32px);max-height:calc(100vh - 40px);animation:panel-in .22s var(--ease) both;grid-template-rows:58px minmax(0,1fr) 66px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 16px #1f1f1f29}.add-inspiration-surface>header,.add-inspiration-surface>footer{justify-content:space-between;align-items:center;padding:0 18px;display:flex}.add-inspiration-surface>header{border-bottom:1px solid var(--divider)}.add-inspiration-surface>header>div{font-size:var(--type-body);align-items:center;gap:8px;font-weight:400;display:flex}.add-inspiration-surface>header>button{border-radius:3px;place-items:center;width:30px;height:30px;display:grid}.add-inspiration-surface>footer{border-top:1px solid var(--divider);justify-content:flex-end;gap:7px}.add-inspiration-surface>footer>button:first-child{height:38px;color:var(--muted);padding:0 12px}.add-inspiration-body{padding:24px 24px 32px;overflow-y:auto}.add-intro{padding-bottom:24px}.add-intro h2{font-size:var(--type-title);letter-spacing:-.035em;margin:12px 0 6px;font-weight:400}.add-intro p{max-width:48ch;color:var(--muted);font-size:var(--type-caption);margin:0;line-height:1.55}.add-inspiration-body>label{gap:6px;margin-bottom:14px;display:grid}.add-inspiration-body>label>span,.add-inspiration-body legend{color:var(--ink);font-size:var(--type-body);font-weight:400}.add-inspiration-body>label>span>small{font-size:var(--type-caption);margin-left:4px}.add-inspiration-body .add-field-help{font-size:var(--type-caption);line-height:1.45}.add-inspiration-body small{color:var(--faint);font-style:normal;font-weight:400}.add-inspiration-body>label input,.add-inspiration-body select{background:var(--surface);width:100%;height:38px;font-size:var(--type-caption);border:0;border-radius:4px;padding:0 10px;font-weight:400}.add-inspiration-body>label input:focus-visible,.add-inspiration-body select:focus-visible{background:var(--white);box-shadow:0 0 0 2px var(--surface-2);outline:none}.add-inspiration-body>label input::placeholder{color:var(--input-placeholder);opacity:1;font-style:normal;font-weight:400}.add-inspiration-body fieldset{border:0;gap:5px;margin:20px 0 14px;padding:0;display:grid}.add-inspiration-body legend{margin-bottom:8px}.add-inspiration-body fieldset label{background:var(--surface);cursor:pointer;border-radius:4px;grid-template-columns:18px minmax(0,1fr);gap:8px;padding:10px;display:grid}.add-inspiration-body fieldset input{accent-color:var(--ink)}.add-inspiration-body fieldset span{flex-direction:column;gap:3px;display:flex}.add-inspiration-body fieldset strong{font-size:var(--type-body);font-weight:400}.add-inspiration-body fieldset small{font-size:var(--type-caption)}.scan-overlay{z-index:80;width:min(440px,100vw - 32px);color:var(--white);background:var(--ink);border-radius:7px;grid-template-columns:24px auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 14px;display:grid;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 8px #0b0b0b2e}.scan-overlay div{flex-direction:column;gap:3px;display:flex}.scan-overlay strong{font-size:var(--type-caption);font-weight:500}.scan-overlay span,.scan-overlay p{color:#b7b7b7;font-size:var(--type-caption)}.scan-overlay p{text-overflow:ellipsis;white-space:nowrap;text-align:right;margin:0;overflow:hidden}.scan-overlay button{color:#b7b7b7;height:28px;font-size:var(--type-caption);border-radius:4px;padding:0 8px}.scan-overlay button:hover{color:var(--white);background:#ffffff1f}.toast{z-index:90;max-width:min(520px,100vw - 36px);min-height:42px;color:var(--white);background:var(--ink);font-size:var(--type-caption);animation:toast-in .22s var(--ease) both;border-radius:6px;align-items:center;gap:8px;padding:0 10px 0 12px;display:flex;position:fixed;bottom:18px;right:18px}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.toast.is-error{background:var(--error)}.toast.is-elevated{bottom:112px}.toast>svg,.toast button{flex:none}.toast>span{overflow-wrap:anywhere;min-width:0}.toast button{width:28px;height:28px;color:inherit;place-items:center;display:grid}.recognition-activity{z-index:90;width:min(360px,100vw - 36px);min-height:76px;color:var(--white);background:var(--ink);animation:toast-in .22s var(--ease) both;border-radius:6px;grid-template-columns:18px minmax(0,1fr) 28px;align-items:start;column-gap:9px;padding:13px 10px 12px 13px;display:grid;position:fixed;bottom:18px;right:18px;box-shadow:0 4px 8px #1f1f1f29}.recognition-activity-icon{place-items:center;width:18px;height:18px;margin-top:1px;display:grid}.recognition-activity.is-error .recognition-activity-icon{color:var(--error)}@supports (color:color-mix(in lab,red,red)){.recognition-activity.is-error .recognition-activity-icon{color:color-mix(in oklch,var(--error) 65%,var(--white))}}.recognition-activity-copy{gap:3px;min-width:0;display:grid}.recognition-activity-copy strong{font-size:var(--type-caption);font-weight:500;line-height:1.35}.recognition-activity-copy>span{color:#bebebe;font-size:var(--type-caption);overflow-wrap:anywhere;line-height:1.42}.recognition-activity>button{color:#b1b1b1;border-radius:4px;place-items:center;width:28px;height:28px;margin-top:-5px;display:grid}.recognition-activity>button:hover{color:var(--white);background:#ffffff1a}.recognition-progress-track{background:#ffffff2e;border-radius:999px;width:100%;height:3px;margin-top:7px;overflow:hidden}.recognition-progress-track i{border-radius:inherit;background:var(--white);transform-origin:0;width:100%;height:100%;transition:transform .18s var(--ease);display:block}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1220px){.top-nav{gap:10px}.map-case-count,.map-toolbar .selection-count{display:none}.map-folder-navigation{flex-basis:220px;max-width:220px}.map-folder-navigation .folder-breadcrumbs button{max-width:82px}.app-content.has-details{grid-template-columns:minmax(0,1fr) 350px}.case-detail-surface{grid-template-columns:minmax(0,1fr) clamp(430px,42vw,480px)}.viewer-footer dl{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:9px}.viewer-footer.is-single-image{min-height:112px}.viewer-footer.has-multiple-images{min-height:148px}}@media(max-width:1880px){.map-batch-bar~.canvas-hint{display:none}}@media(max-width:1180px){.map-batch-bar{bottom:calc(var(--map-bottom-inset) + var(--map-bottom-cell-height) + 8px)}}@media(max-width:1500px){.gallery-view .view-heading{flex-direction:column;align-items:flex-start;gap:28px}.gallery-view .view-heading>div:first-child{width:100%}.gallery-view .view-heading p.gallery-heading-summary{justify-content:flex-start;width:100%;min-width:0}.gallery-view .gallery-heading-context{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.gallery-view .gallery-heading-counts{white-space:nowrap;flex:none}.gallery-tools{flex-wrap:nowrap;justify-content:flex-start;align-self:flex-start;align-items:center;gap:8px;width:auto;min-width:0;max-width:100%;display:flex}.gallery-tools>*{min-width:0}.gallery-tools .gallery-filter-dropdown,.gallery-tools .gallery-sort-dropdown{flex:0 auto;width:auto;max-width:240px}.gallery-tools .gallery-filter-trigger,.gallery-tools .gallery-sort-trigger{width:auto;max-width:240px}.gallery-tools>.gallery-sort-native{display:none}.gallery-tools .gallery-sort-dropdown{display:block}.gallery-tools .gallery-sort-trigger{height:36px}.gallery-view .density-control{display:none}.gallery-view .gallery-content,.gallery-view .gallery-content.density-4,.gallery-view .gallery-content.density-6,.gallery-view .gallery-content.density-8{--gallery-columns:4}}@media(max-width:1400px){.app-shell.is-library-open .view-heading{flex-direction:column;align-items:flex-start}}@media(max-width:1050px){.app-shell.is-library-open .view-heading{flex-direction:column;align-items:flex-start}}@media(max-width:1000px){.gallery-view .gallery-content.density-4,.gallery-view .gallery-content.density-6,.gallery-view .gallery-content.density-8,.app-shell.is-library-open .gallery-view .gallery-content{--gallery-columns:3}}@media(max-width:900px){.top-nav{grid-template-columns:1fr auto;padding:0 14px}.map-folder-navigation{flex-basis:176px;max-width:176px}.map-folder-navigation .folder-back-action{justify-content:center;width:34px;padding:0}.map-folder-navigation .folder-back-action span{display:none}.map-folder-navigation .folder-breadcrumbs button{max-width:86px}.app-content.has-details{grid-template-columns:1fr}.gallery-tools{flex-wrap:nowrap;justify-content:flex-start}.detail-global-close{top:5px;right:8px}.case-detail-surface{border-radius:10px 10px 0 0;grid-template-rows:minmax(360px,56vh) minmax(0,1fr);grid-template-columns:1fr;width:100%;height:calc(100% - 44px)}.case-viewer.has-multiple-images{grid-template-rows:52px minmax(0,1fr) 62px}.case-viewer.is-single-image{grid-template-rows:52px minmax(0,1fr)}.viewer-footer.is-single-image{display:none}.viewer-footer.has-multiple-images{grid-template:"page thumbnails"1fr/auto minmax(0,1fr);min-height:62px;padding:0 14px}.analysis-panel{min-height:0}.viewer-footer dl{display:none}.permission-banner{top:auto;bottom:14px;right:14px}}@media(min-width:641px)and (max-width:1280px){.gallery-folder-navigation .folder-breadcrumbs{min-width:0}}@media(min-width:641px)and (max-width:1150px){.app-shell.is-library-open .gallery-view .gallery-content,.app-shell.is-library-open .gallery-view .gallery-content.density-4,.app-shell.is-library-open .gallery-view .gallery-content.density-6,.app-shell.is-library-open .gallery-view .gallery-content.density-8{--gallery-columns:2;--gallery-column-gap:36px}}.app-shell.is-map-chrome-compact .top-tool{height:44px;min-height:44px}.app-shell.is-map-chrome-compact .add-inspiration-action{justify-content:center;width:44px;padding:0;font-size:0}.app-shell.is-map-chrome-compact .add-inspiration-action svg{width:16px}.app-shell.is-map-chrome-compact .mobile-map-header-tools,.app-shell.is-map-chrome-compact .mobile-map-header-controls{min-width:0;color:var(--muted);align-items:center;gap:3px;display:flex}.app-shell.is-map-chrome-compact .mobile-map-header-controls .arrange-control,.app-shell.is-map-chrome-compact .mobile-map-header-controls .filter-control{flex:0 0 44px;width:44px;min-width:44px;height:44px}.app-shell.is-map-chrome-compact .mobile-map-header-controls .toolbar-dropdown-trigger{justify-content:center;width:44px;height:44px;padding:0}.app-shell.is-map-chrome-compact .mobile-map-header-controls .toolbar-dropdown-label,.app-shell.is-map-chrome-compact .mobile-map-header-controls .toolbar-dropdown-trigger>.lucide-chevron-down{display:none}.app-shell.is-map-chrome-compact .mobile-map-header-controls .toolbar-dropdown-trigger>svg:first-child{width:16px;height:16px}.app-shell.is-map-chrome-compact .mobile-map-header-controls .toolbar-dropdown-menu{top:calc(100% + 6px);left:auto;right:0}.app-shell.is-map-chrome-compact .map-toolbar{display:none}.app-shell.is-map-chrome-compact .mobile-map-search{z-index:3;flex:0 0 44px;width:44px;height:44px;display:block;position:relative}.app-shell.is-map-chrome-compact .mobile-map-search.is-open{z-index:6}.app-shell.is-map-chrome-compact .mobile-map-search-trigger{justify-content:center;width:44px;height:44px;padding:0}.app-shell.is-map-chrome-compact .mobile-map-search-panel{z-index:2;top:0;left:var(--header-search-offset-x,0px);width:var(--header-search-expanded-width,240px);background:var(--glass-surface);height:44px;box-shadow:var(--shadow-float);opacity:0;visibility:hidden;clip-path:inset(0 calc(100% - var(--header-search-trigger-anchor-x,0px) - 44px) 0 var(--header-search-trigger-anchor-x,0px) round 8px);pointer-events:none;-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);transition:width .24s var(--ease),clip-path .24s var(--ease),opacity .15s var(--ease),transform .24s var(--ease),visibility 0s linear .24s;border-radius:8px;align-items:center;gap:8px;padding:0 11px;display:flex;position:absolute;overflow:visible;transform:translate(-2px)}.app-shell.is-map-chrome-compact .mobile-map-search.is-open .mobile-map-search-panel{width:var(--header-search-expanded-width,240px);opacity:1;visibility:visible;clip-path:inset(0 round 8px);pointer-events:auto;transition-delay:0s;transform:translate(0)}.app-shell.is-map-chrome-compact .mobile-map-search-panel>svg{flex:none}.app-shell.is-map-chrome-compact .mobile-map-search-panel input{width:100%;min-width:0;height:100%;font-size:var(--type-body);background:0 0;border:0;outline:none;padding:0}.app-shell.is-map-chrome-compact .mobile-map-search-panel input::placeholder{color:var(--input-placeholder);opacity:1}.app-shell.is-map-chrome-compact .mobile-map-search-panel .color-search-label{text-overflow:ellipsis;overflow:hidden}.app-shell.is-map-chrome-compact .mobile-map-search-panel .color-search-count{margin-left:auto}.app-shell.is-map-chrome-compact .mobile-map-search-panel .clear-color-search{flex:0 0 32px;justify-content:center;width:32px;height:32px;padding:0}.app-shell.is-map-chrome-compact .mobile-map-search-results{left:var(--header-search-offset-x,0px);width:var(--header-search-expanded-width,240px);max-width:calc(100vw - 16px);top:52px}.app-shell.is-map-chrome-compact .mobile-map-search-result-placeholder{background:var(--surface);width:38px;height:32px;display:block}@media(max-width:640px){.wordmark:before,.empty-entry-header span:first-child:before,.empty-entry-header span:first-child{width:132px;height:28px}.empty-entry{min-height:640px}.empty-entry-header{padding:0 8px}.empty-entry-header span:first-child{margin-left:8px}.empty-entry-content{width:calc(100% - 28px);top:50%}.empty-entry-content h1{font-size:clamp(3.35rem,16vw,5rem);line-height:.94}.empty-entry-copy{width:min(340px,88vw);font-size:var(--type-body);margin-top:26px;line-height:1.5}.empty-folder-action{grid-template-columns:52px minmax(0,1fr);gap:16px;width:280px;height:80px;margin-top:32px;padding:0 24px 0 14px}.empty-folder-action-icon{width:52px;height:52px}.empty-folder-action-copy strong{font-size:1.125rem}.empty-folder-action-copy small{font-size:var(--type-body)}.empty-sticker-anchor:first-child{--sticker-x:-2%!important;--sticker-y:23%!important;--sticker-width:112px!important;--sticker-height:102px!important}.empty-sticker-anchor:nth-child(2){display:none}.empty-sticker-anchor:nth-child(3){--sticker-x:78%!important;--sticker-y:16%!important;--sticker-width:128px!important;--sticker-height:128px!important}.empty-sticker-anchor:nth-child(4){--sticker-x:-5%!important;--sticker-y:57%!important;--sticker-width:122px!important;--sticker-height:42px!important}.empty-sticker-anchor:nth-child(5){--sticker-x:91%!important;--sticker-y:69%!important;--sticker-width:110px!important;--sticker-height:104px!important}.empty-sticker-anchor:nth-child(6){--sticker-x:14%!important;--sticker-y:85%!important;--sticker-width:126px!important;--sticker-height:44px!important}.empty-sticker-anchor:nth-child(7){--sticker-x:69%!important;--sticker-y:92%!important;--sticker-width:82px!important;--sticker-height:72px!important}.empty-sticker-anchor:nth-child(8){display:none}.sticker-type-condensed .empty-sticker-label{font-size:18px}.sticker-type-bold .empty-sticker-label{font-size:16px}.sticker-type-mono .empty-sticker-label,.sticker-type-round .empty-sticker-label{font-size:14px}.shape-half-disc .empty-sticker-label{width:100px;font-size:15px;bottom:27px;left:50%;right:auto}.shape-burst .empty-sticker-label{font-size:16px}.empty-sticker-back-copy{font-size:14px}.empty-sticker-back-core.shape-label .empty-sticker-back-copy,.empty-sticker-back-core.shape-pill .empty-sticker-back-copy{font-size:12px}.empty-sticker-back-core.shape-hexagon .empty-sticker-back-copy{max-width:86%;font-size:12px}.empty-sticker-back-core.shape-half-disc .empty-sticker-back-copy{width:98px;font-size:12px;bottom:21px}.empty-sticker-anchor:after{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px}.top-nav{padding-inline:8px}.top-left-tools{z-index:36}.top-tool{padding-inline:8px}.top-left-tools>i{margin-inline:1px}.gallery-header-search-panel{padding-left:13px}.gallery-header-search-panel>svg:first-child{width:18px;height:18px}.permission-banner{width:calc(100vw - 16px);bottom:8px;right:8px}.permission-banner-copy small{white-space:normal}.add-inspiration-action{justify-content:center;width:44px;padding:0;font-size:0}.add-inspiration-action svg{width:16px}.mobile-map-header-tools,.mobile-map-header-controls{min-width:0;color:var(--muted);align-items:center;gap:3px;display:flex}.mobile-map-header-controls .arrange-control,.mobile-map-header-controls .filter-control{flex:0 0 44px;width:44px;min-width:44px;height:44px}.mobile-map-header-controls .toolbar-dropdown-trigger{justify-content:center;width:44px;height:44px;padding:0}.mobile-map-header-controls .toolbar-dropdown-label,.mobile-map-header-controls .toolbar-dropdown-trigger>.lucide-chevron-down{display:none}.mobile-map-header-controls .toolbar-dropdown-trigger>svg:first-child{width:16px;height:16px}.mobile-map-header-controls .toolbar-dropdown-menu{top:calc(100% + 6px);left:auto;right:0}.library-panel{background:0 0;width:70vw}.library-panel:before{background:var(--white);-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell.is-library-open .app-content{padding-left:0}.app-shell.is-library-open .map-toolbar{left:50%}.map-toolbar{max-width:calc(100vw - 24px);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;padding:0;display:none}.map-toolbar>.map-search-wrap{display:none}.mobile-map-search{z-index:3;flex:0 0 44px;width:44px;height:44px;display:block;position:relative}.mobile-map-search.is-open{z-index:6}.mobile-map-search-trigger{justify-content:center;width:44px;height:44px;padding:0}.mobile-map-search-panel{z-index:2;top:0;left:var(--header-search-offset-x,0px);width:var(--header-search-expanded-width,240px);background:var(--glass-surface);height:44px;box-shadow:var(--shadow-float);opacity:0;visibility:hidden;clip-path:inset(0 calc(100% - var(--header-search-trigger-anchor-x,0px) - 44px) 0 var(--header-search-trigger-anchor-x,0px) round 8px);pointer-events:none;-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);transition:width .24s var(--ease),clip-path .24s var(--ease),opacity .15s var(--ease),transform .24s var(--ease),visibility 0s linear .24s;border-radius:8px;align-items:center;gap:8px;padding:0 11px;display:flex;position:absolute;overflow:visible;transform:translate(-2px)}.mobile-map-search.is-open .mobile-map-search-panel{width:var(--header-search-expanded-width,240px);opacity:1;visibility:visible;clip-path:inset(0 round 8px);pointer-events:auto;transition-delay:0s;transform:translate(0)}.mobile-map-search-panel>svg{flex:none}.mobile-map-search-panel input{width:100%;min-width:0;height:100%;font-size:var(--type-body);background:0 0;border:0;outline:none;padding:0}.mobile-map-search-panel input::placeholder{color:var(--input-placeholder);opacity:1}.mobile-map-search-panel .color-search-label{text-overflow:ellipsis;overflow:hidden}.mobile-map-search-panel .color-search-count{margin-left:auto}.mobile-map-search-panel .clear-color-search{flex:0 0 32px;justify-content:center;width:32px;height:32px;padding:0}.mobile-map-search-results{left:var(--header-search-offset-x,0px);width:var(--header-search-expanded-width,240px);max-width:calc(100vw - 16px);top:52px}.mobile-map-search-result-placeholder{background:var(--surface);width:38px;height:32px;display:block}.app-shell.is-map-chrome-compact .mobile-map-search-panel{padding-left:13px}.app-shell.is-map-chrome-compact .mobile-map-search-panel>svg:first-child{width:18px;height:18px}.map-folder-navigation{flex:0 0 34px;max-width:34px}.map-folder-navigation .folder-breadcrumbs,.map-toolbar>span{display:none}.filter-control{flex:0 0 44px;display:flex}.filter-control .toolbar-dropdown-trigger{justify-content:center;width:44px;padding-inline:0}.filter-control .toolbar-dropdown-label{display:none}.arrange-control .toolbar-dropdown-menu,.filter-control .toolbar-dropdown-menu{left:auto;right:0}.clear-color-search span{display:none}.arrange-control .toolbar-dropdown-label{max-width:108px}.canvas-controls button:nth-of-type(n+3){width:30px;padding:0;font-size:0}.canvas-hint{display:none}.gallery-view,.collection-page,.search-view,.settings-view,.information-view{padding:calc(var(--nav-height) + 24px) 18px 56px}.view-heading h1,.search-hero h1{font-size:2.5rem}.gallery-view .view-heading>div:first-child{gap:18px;width:100%}.gallery-view .view-heading p.gallery-heading-summary{flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-height:0}.gallery-view .gallery-heading-context{width:100%;min-width:0;color:var(--ink);overflow-wrap:anywhere;white-space:normal;line-height:1.45}.gallery-view .gallery-heading-counts{line-height:1.45;display:block}.gallery-view .gallery-heading-separator,.gallery-view .density-control{display:none}.gallery-view .gallery-content,.gallery-view .gallery-content.density-4,.gallery-view .gallery-content.density-6,.gallery-view .gallery-content.density-8,.app-shell.is-library-open .gallery-view .gallery-content,.app-shell.is-library-open .gallery-view .gallery-content.density-4,.app-shell.is-library-open .gallery-view .gallery-content.density-6,.app-shell.is-library-open .gallery-view .gallery-content.density-8{--gallery-columns:2;--gallery-column-gap:36px;--gallery-row-gap:64px}.view-heading{flex-direction:column;align-items:flex-start}.information-layout{grid-template-columns:minmax(0,1fr);gap:0}.information-index{display:none}.information-document section+section{margin-top:40px}.information-document .information-lead h2{font-size:1.75rem}.help-question summary{gap:12px;min-height:56px}.help-answer{padding-right:34px}.information-facts div{grid-template-columns:108px minmax(0,1fr);gap:14px}.gallery-tools{--gallery-mobile-control-height:44px;--gallery-mobile-leading-icon-size:14px;width:100%;min-height:var(--gallery-mobile-control-height);flex-wrap:nowrap;justify-content:flex-start;position:relative}.gallery-tools .gallery-filter-dropdown{flex:0 42%;order:1;max-width:130px}.gallery-tools .gallery-filter-trigger{width:100%;height:var(--gallery-mobile-control-height);min-height:var(--gallery-mobile-control-height);max-width:none}.gallery-tools .gallery-filter-trigger>span{max-width:none}.gallery-tools>.gallery-sort-native{display:none}.gallery-tools .gallery-sort-dropdown{flex:0 48%;order:2;min-width:0;max-width:154px;display:block}.gallery-tools .gallery-sort-trigger{width:100%;height:var(--gallery-mobile-control-height);min-height:var(--gallery-mobile-control-height)}.gallery-tools .gallery-filter-trigger>svg:first-child,.gallery-tools .gallery-sort-trigger>svg:first-child{width:var(--gallery-mobile-leading-icon-size);height:var(--gallery-mobile-leading-icon-size);flex:0 0 var(--gallery-mobile-leading-icon-size)}.gallery-tools .gallery-filter-trigger:focus-visible,.gallery-tools .gallery-sort-trigger:focus-visible{box-shadow:0 0 0 2px var(--accent-soft-strong),0 2px 6px #29292914,inset 0 1px 0 var(--white);outline:none}.gallery-folder-navigation{flex-direction:column;align-items:flex-start;width:100%}.gallery-folder-navigation .folder-breadcrumbs{width:100%;max-width:none}.gallery-folder-navigation .folder-breadcrumbs>span{flex:0 var(--gallery-breadcrumb-shrink,1) auto;max-width:100%}.gallery-folder-navigation .folder-breadcrumbs>span:last-child{flex-grow:1}.gallery-folder-navigation .folder-breadcrumbs>span:not(:last-child){min-width:40px}.gallery-folder-navigation .folder-breadcrumbs>span:first-child{min-width:44px}.gallery-folder-navigation .folder-breadcrumbs>span:last-child{min-width:88px}.gallery-folder-navigation .folder-breadcrumbs>span:only-child{flex:100%;width:100%}.gallery-folder-navigation .folder-breadcrumbs>span>svg{flex:none}.gallery-folder-navigation .folder-breadcrumbs button{text-align:left;width:100%;max-width:none}.gallery-content-section+.gallery-content-section{margin-top:80px}.batch-bar{flex-wrap:wrap}.batch-bar span{flex:1 0 100%}.map-batch-bar{height:auto;min-height:var(--map-bottom-cell-height)}.collection-notice{flex-direction:column;align-items:flex-start}.settings-groups section{grid-template-columns:1fr}.settings-groups section>h2+p,.settings-groups section>h2+dl,.settings-groups section>h2+div{margin-top:12px}.library-settings-copy,.settings-actions,.settings-action-note,.settings-operation-status{grid-column:1}.bulk-suggestion-actions{flex-direction:column;align-items:stretch}.bulk-suggestion-actions>div{width:100%}.bulk-suggestion-actions>button{align-self:flex-start}.bulk-hide-suggestion{opacity:.68;pointer-events:auto}.search-result-list article{grid-template-columns:58px minmax(0,1fr);padding:14px 0}.search-result-thumb{width:58px;height:46px}.search-result-list article>div{flex-wrap:wrap;grid-column:2}.palette-swatches{grid-template-columns:repeat(3,1fr)}.detail-global-close span{display:none}.detail-global-close{justify-content:center;width:34px;padding:0}.case-detail-surface{grid-template-rows:minmax(300px,52vh) minmax(0,1fr);height:calc(100% - 44px)}.viewer-actions .action-label,.viewer-header>div:first-child strong,.viewer-actions span,.viewer-actual-action{display:none}.detail-image-stage{padding:12px 42px}.viewer-footer{grid-template-columns:auto 1fr;gap:10px;padding:0 12px}.analysis-scroll{padding-inline:16px}.case-file-title{font-size:var(--type-title)}}@media(prefers-reduced-motion:reduce){.gallery-header-search-panel{animation-duration:1ms}}@media(hover:none){.bulk-suggestion-state{opacity:1}.top-tool,.toolbar-dropdown-trigger,.gallery-filter-trigger{min-width:44px;min-height:44px}.filter-control,.arrange-control{min-width:44px;height:44px}.view-switcher-menu button,.toolbar-dropdown-menu button,.case-node-menu button,.gallery-header-search-field,.gallery-header-search-panel,.compact-select,.density-control,.add-inspiration-body>label input,.add-inspiration-body select,.source-link-control,.source-link-control input,.assignment-create,.assignment-create input,.create-collection input{min-height:44px}.canvas-controls button,.density-control button,.palette-similar-action,.detail-global-close,.case-status-actions button,.viewer-actions button{min-width:44px;height:44px}.case-menu-trigger{opacity:.84;pointer-events:auto;width:44px;height:44px;top:4px;right:4px}.folder-branch-collapse{width:44px;height:44px;bottom:-24px}.image-nav{width:44px;min-height:48px}.image-thumbnails button,.source-link-control a{width:44px;height:44px}.completed-source-link,.keyword-list button,.sampled-color,.folder-back-action,.folder-breadcrumbs button,.batch-bar button,.analysis-section-title button,.assignment-chips button,.technique-actions button,.prompt-format-control button,.design-prompt-actions button,.current-image-actions button,.field-editor-actions button,.field-empty-action,.case-file-title-action,.settings-actions button,.button-label,.settings-confirm-surface footer button,.add-inspiration-surface>footer>button{min-height:44px}.viewer-actions{scrollbar-width:none;min-width:0;overflow-x:auto}.viewer-actions::-webkit-scrollbar{display:none}.image-annotation:before{content:"";border-radius:50%;position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px}.select-image{opacity:1;pointer-events:auto;width:44px;height:44px;top:4px;left:4px}.library-row{min-height:44px}.row-actions button,.add-inspiration-surface>header>button{width:44px;height:44px}.gallery-open-cue{display:none}.canvas-folder-rename,.gallery-folder-rename{opacity:1;pointer-events:auto;position:relative}.canvas-folder-rename:before,.gallery-folder-rename:before{content:"";position:absolute;top:-13px;right:-13px;bottom:-13px;left:-13px}}@media(max-width:420px){.wordmark:before,.empty-entry-header span:first-child:before,.empty-entry-header span:first-child{width:82px;height:18px}.empty-entry-header nav button,.public-information-header nav button{padding-inline:7px}.top-left-tools>i{display:none}.wordmark{padding-inline:0}.view-switcher-trigger{justify-content:center;gap:0;width:44px;padding:0;font-size:0}.view-switcher-trigger>svg:last-child{display:none}.arrange-control{flex:0 0 44px}.arrange-control .toolbar-dropdown-trigger{justify-content:center;width:44px;padding-inline:0}.arrange-control .toolbar-dropdown-label,.arrange-control .toolbar-dropdown-trigger>.lucide-chevron-down{display:none}}@media(max-width:380px){.top-nav{padding-inline:4px}.top-left-tools,.top-actions,.mobile-map-header-tools,.mobile-map-header-controls{gap:0}.wordmark:before,.empty-entry-header span:first-child:before,.empty-entry-header span:first-child{width:74px;height:16px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}.empty-entry-content{animation:none!important}.empty-sticker-float{transform:rotate(var(--sticker-rotate));animation:none!important}.empty-sticker-parallax{transform:none!important}.empty-sticker-flip,.empty-sticker-anchor.is-flipped .empty-sticker-flip{transition:none!important;transform:none!important}.empty-sticker-face{transition:none!important}.empty-sticker-back{opacity:0;transform:none}.empty-sticker-anchor.is-flipped .empty-sticker-front{opacity:0}.empty-sticker-anchor.is-flipped .empty-sticker-back{opacity:1;transform:none}.empty-sticker-core:after,.empty-sticker-anchor:hover .empty-sticker-core:after{opacity:.36!important;background-position:50%!important}.empty-folder-action:before,.empty-folder-action:after{--folder-glow-angle:42deg;animation:none!important}.settings-actions svg.is-spinning,.analysis-section-actions svg.is-spinning{animation:none!important}}@media(prefers-reduced-transparency:reduce){.empty-folder-action{background:var(--white);-webkit-backdrop-filter:none;backdrop-filter:none}.folder-card__glass-sleeve{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}.library-panel{background:0 0}.library-panel:before,.view-switcher-menu,.case-node-menu,.permission-banner,.map-toolbar,.gallery-header-search.is-full,.gallery-header-search-panel,.toolbar-dropdown-menu,.search-results-popover,.canvas-controls,.canvas-hint,.batch-bar{background:var(--white);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(max-width:640px)and (prefers-reduced-transparency:reduce){.map-toolbar{box-shadow:none;background:0 0}.mobile-map-search-panel,.mobile-map-search-results{background:var(--white);-webkit-backdrop-filter:none;backdrop-filter:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}button{cursor:pointer;-webkit-user-select:none;user-select:none}button *,a *,.button-label *{cursor:inherit;pointer-events:none}button:disabled,button:disabled *{cursor:not-allowed}input,textarea,[contenteditable=true]{cursor:text;-webkit-user-select:text;user-select:text}select,.button-label{cursor:pointer;-webkit-user-select:none;user-select:none}.map-view,.map-view .react-flow,.map-view .react-flow__renderer,.map-view .react-flow__container,.map-view .react-flow__pane,.map-view .react-flow__pane.draggable,.map-view .react-flow__pane.selection{cursor:default}.map-view .react-flow__node,.map-view .react-flow__node.selectable,.map-view .react-flow__node.draggable{cursor:grab}.map-view.is-marquee-selecting,.map-view.is-marquee-selecting .react-flow,.map-view.is-marquee-selecting .react-flow__renderer,.map-view.is-marquee-selecting .react-flow__container,.map-view.is-marquee-selecting .react-flow__pane,.map-view.is-marquee-selecting .react-flow__pane.draggable,.map-view.is-marquee-selecting .react-flow__pane.selection,.map-view.is-marquee-selecting .react-flow__node,.map-view.is-marquee-selecting .react-flow__node *{cursor:crosshair}.map-view.is-space-panning .react-flow__pane,.map-view .react-flow__pane.dragging,.map-view .react-flow__node.dragging,.map-view .react-flow__node.dragging *{cursor:grabbing!important}.map-toolbar,.canvas-controls,.canvas-hint,.map-batch-bar{cursor:default;-webkit-user-select:none;user-select:none}
