.file-gallery-thumbs{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(112px,1fr));width:100%;display:grid}.file-gallery-thumb{gap:var(--space-1);background:var(--surface-sunken);min-width:0;color:var(--text-primary);border-radius:var(--r-control);text-align:left;cursor:pointer;border:0;padding:4px;display:grid;position:relative}.file-gallery-thumb img{object-fit:cover;border-radius:var(--r-control);width:100%;height:96px;display:block}.file-gallery-thumb>span{-webkit-line-clamp:2;overflow-wrap:anywhere;font-size:var(--type-tag-size);line-height:var(--type-tag-line);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.file-gallery-thumb small{color:var(--text-secondary)}.file-gallery-item{min-width:0;position:relative}.file-gallery-item .file-gallery-thumb{width:100%}.file-gallery-image{display:block;position:relative}.file-gallery-image.is-file{border-radius:var(--r-control);background:var(--surface-canvas);height:96px;color:var(--text-tertiary);place-items:center;display:grid}.file-gallery-file{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--r-control);background:var(--surface-sunken);color:var(--text-tertiary);display:flex}.file-gallery-file>span{min-width:0;color:var(--text-primary);overflow-wrap:anywhere;flex:1;display:grid}.file-gallery-file small{color:var(--text-tertiary);font-size:var(--type-caption-size)}.file-lightbox-open{justify-self:start}.file-gallery-file a.ui-btn,a.file-lightbox-open{text-decoration:none}.file-gallery-photos{grid-template-columns:minmax(0,1fr)}.file-gallery-photos .file-gallery-thumb{justify-items:center}.file-gallery-photos .file-gallery-image{max-width:100%;display:inline-flex}.file-gallery-photos img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:700px;display:block}.file-gallery-hint{align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);color:var(--text-tertiary);font-size:var(--type-ui-size);line-height:var(--type-ui-line);display:flex}.file-inline-annotations{gap:var(--space-3);display:grid}.file-inline-annotations>header{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--text-tertiary);font-size:var(--type-caption-size);display:flex}.file-inline-annotations .file-lightbox-image-area{justify-content:flex-start}.file-inline-annotations .file-lightbox-stage>img{border-radius:var(--r-control);width:100%;height:auto;max-height:none}.file-gallery-remove{background:var(--surface-canvas);position:absolute;top:4px;right:4px}.file-lightbox-backdrop{z-index:10000;background:var(--scrim);justify-content:center;align-items:center;padding:12px;display:flex;position:fixed;inset:0}.file-lightbox{box-shadow:var(--elev-panel);width:min(1040px, calc(100 * var(--vw) - 24px));border-radius:var(--r-panel);background:var(--surface-canvas);gap:12px;max-height:calc(100dvh - 24px);padding:16px;display:grid;overflow:auto}.file-lightbox header{justify-content:space-between;align-items:center;gap:8px;display:flex}.file-lightbox header>span{overflow-wrap:anywhere;min-width:0}.file-lightbox header>div{flex:none;display:flex}.file-lightbox-image-area{justify-content:center;min-width:0;display:flex}.file-lightbox-stage{max-width:100%;display:inline-flex;position:relative}.file-lightbox-stage>img{-webkit-user-select:none;user-select:none;width:auto;max-width:100%;height:auto;max-height:65dvh;display:block}.file-lightbox-stage.is-drawing{touch-action:none;cursor:crosshair}.file-lightbox.is-viewer .file-lightbox-stage>img{max-height:calc(100dvh - 112px)}.file-annotation{border:2px solid var(--sev-critical);border-radius:var(--r-xs);cursor:pointer;background:color-mix(in srgb, var(--sev-critical) 6%, transparent);min-width:0;transition:background-color var(--dur-fast), box-shadow var(--dur-fast);padding:0;position:absolute}.file-annotation:hover,.file-annotation.is-hovered{background:color-mix(in srgb, var(--sev-critical) 12%, transparent)}.file-annotation.is-pinned{background:color-mix(in srgb, var(--sev-critical) 14%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--sev-critical) 22%, transparent)}.file-annotation.is-draft{pointer-events:none;border-style:dashed}.file-annotation>span{border-radius:var(--r-pill);background:var(--sev-critical);min-width:22px;height:22px;color:var(--text-inverse);box-shadow:var(--elev-thumb);font-size:var(--type-tag-size);place-items:center;padding:0 6px;font-weight:700;line-height:1;display:grid;position:absolute;top:-11px;left:-11px}.file-annotation-bubble{z-index:1;width:max-content;min-width:min(240px,100%);max-width:min(520px,100%);padding:var(--space-3) var(--space-4);cursor:default;text-align:left;position:absolute}.file-annotation-bubble:has(.file-annotation-editor){width:min(440px,100%)}.file-annotation-bubble.is-preview{z-index:2;pointer-events:none}.file-annotation-note{align-items:flex-start;gap:var(--space-2);display:flex}.file-annotation-note>b{border-radius:var(--r-pill);background:var(--sev-critical);min-width:22px;height:22px;color:var(--text-inverse);font-size:var(--type-tag-size);flex:none;place-items:center;margin-top:1px;padding:0 6px;font-weight:700;line-height:1;display:grid}.file-annotation-note>p{min-width:0;font-size:var(--type-body-size);line-height:var(--type-body-line);white-space:pre-wrap;overflow-wrap:anywhere;flex:1;margin:0}.file-annotation-tools{margin:0 -6px 0 var(--space-2);flex:none;gap:2px;display:flex}.file-annotation-editor{gap:var(--space-2);display:grid}.file-annotation-editor textarea.ui-field{min-height:64px}.file-annotation-actions{justify-content:flex-end;gap:var(--space-1);display:flex}.file-annotation-error{color:var(--text-danger);font-size:var(--type-ui-size);margin:0}@container workspace (width<=640px){.file-lightbox{padding:12px}.file-lightbox header .ui-icon-btn{min-width:36px;min-height:36px}}.property-files-editor.has-gallery{align-items:flex-start;gap:var(--space-1);padding-block:var(--space-1);flex-direction:column}.database-record-properties .property-files-editor.has-gallery{padding-inline-start:var(--record-value-inset)}.property-files-edit{margin-inline-start:calc(var(--space-1) - var(--ctl-px))}.property-files-trigger>:is(span,a)>span,.property-file-row>:first-child>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.property-files-trigger>:is(span,a)>svg{flex:none}.property-files-trigger>a{color:inherit;text-decoration:none}.property-files-trigger>a:hover{color:var(--text-primary);text-decoration:underline}.property-files-trigger.is-readonly{cursor:default}.property-files-trigger.is-readonly:hover{background:0 0}.database-table tbody td .property-files-trigger{flex-wrap:nowrap}.database-table tbody td .property-files-trigger>:is(span,a){flex:0 auto;min-width:0}.database-table tbody td .property-files-trigger>small{flex:none}
