.gallery-page{padding:var(--space-4)}.gallery{gap:var(--space-4);padding:var(--space-4);display:grid}.gallery-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary);margin:0}.gallery-toolbar{align-items:flex-end;gap:var(--space-3);padding:var(--space-4);background:var(--bento-tile);border-radius:var(--radius-tile);flex-wrap:wrap;display:flex}.gallery-field{gap:var(--space-1);min-width:var(--field-min-width-sm);display:grid}.gallery-field-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);color:var(--color-text-label)}.gallery-field-control{padding:var(--space-2) var(--space-3);background-color:var(--bento-tile-raised);color:var(--color-text-primary);border-radius:var(--radius-xl);font-family:var(--font-family);font-size:var(--font-size-base)}select.gallery-field-control{padding-right:var(--space-10)}.gallery-field-control:focus-visible{outline-offset:var(--space-1)}.gallery-search{flex:1 1 var(--field-min-width);min-width:var(--field-min-width)}.gallery-toolbar-actions{gap:var(--space-2);margin-left:auto;display:flex}.gallery-generate-link{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-accent-text);border:var(--border-width) solid transparent;border-radius:var(--radius-xl);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);text-decoration:none;display:inline-flex}.gallery-generate-link:hover{background:var(--color-accent-hover)}.gallery-generate-link:focus-visible{outline-offset:var(--space-1)}.gallery-groups{gap:var(--space-4);display:grid}.gallery-group-header{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:var(--bento-tile);border-radius:var(--radius-tile);display:flex}.gallery-group-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.gallery-group-count{color:var(--color-text-muted);font-size:var(--font-size-sm)}.gallery-grid{grid-template-columns:repeat(auto-fill, minmax(var(--grid-min-md), 1fr));gap:var(--space-3);padding-top:var(--space-3);display:grid}.gallery-tile{aspect-ratio:1;background:var(--bento-tile);border-radius:var(--radius-tile-sm);cursor:pointer;text-align:left;font-family:var(--font-family);color:var(--color-text-primary);transition:border-color var(--transition-fast);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.gallery-tile-button{min-height:0;color:inherit;font-family:inherit;font-size:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:auto;padding:0;display:flex}.gallery-tile-media{object-fit:cover;flex:auto;width:100%;min-height:0;display:block}.gallery-tile-button:focus-visible{outline-offset:var(--space-1)}.gallery-tile-button[data-tip]:after{bottom:auto;top:var(--space-6)}.gallery-tile.selected{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.gallery-tile-name{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gallery-tile-chips{top:var(--space-2);right:var(--space-2);justify-content:flex-end;gap:var(--space-1);max-width:calc(100% - var(--space-6));z-index:2;flex-wrap:wrap;display:flex;position:absolute}.gallery-tile-check{top:var(--space-2);left:var(--space-2);width:var(--space-5);height:var(--space-5);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-full);background:var(--bento-tile);color:var(--color-accent-text);z-index:2;place-items:center;display:grid;position:absolute}.gallery-tile.selected .gallery-tile-check{background:var(--color-accent);border-color:var(--color-accent)}.gallery-tile-publish{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3) var(--space-2);flex-wrap:wrap;display:flex}.gallery-publish-action{padding:var(--space-1) var(--space-2);border-radius:var(--radius-xl);background:var(--bento-tile-raised);color:var(--color-text-primary);font-size:var(--font-size-xs);font-family:var(--font-family);cursor:pointer}.gallery-publish-action:focus-visible{outline-offset:var(--space-1)}.gallery-publish-action:disabled{opacity:var(--opacity-disabled);cursor:default}.gallery-publish-reschedule{font-size:var(--font-size-xs);color:var(--color-text-label);flex-direction:column;display:flex}.gallery-publish-reschedule input{padding:var(--space-1);border-radius:var(--radius-lg);background:var(--bento-tile-raised);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-xs)}.gallery-publish-reschedule input:focus-visible{outline-offset:var(--space-1)}.gallery-publish-posted{font-size:var(--font-size-xs);color:var(--color-text-muted)}.gallery-evergreen{gap:var(--space-2);display:grid}.gallery-evergreen-toggle{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;display:inline-flex}.gallery-evergreen-cadence{gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-label);display:grid}.gallery-evergreen-cadence input{padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:var(--bento-tile-raised);color:var(--color-text-primary);font-family:var(--font-family)}.gallery-evergreen-cadence input:focus-visible{outline-offset:var(--space-1)}.gallery-evergreen-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0}.gallery-empty{align-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-8);text-align:center;color:var(--color-text-secondary);flex-direction:column;display:flex}.gallery-empty .phantom-mark{opacity:.5}.gallery-empty p{margin:0}.gallery-create-link{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--bento-tile-raised);color:var(--color-text-primary);border-radius:var(--radius-xl);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);text-decoration:none;display:inline-flex}.gallery-create-link:hover{background:var(--bento-tile-hover)}.gallery-create-link:focus-visible{outline-offset:var(--space-1)}.gallery-empty-cta{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--bento-tile-raised);color:var(--color-text-primary);border-radius:var(--radius-xl);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);text-decoration:none;display:inline-flex}.gallery-empty-cta:hover{background:var(--bento-tile-hover)}.gallery-empty-cta:focus-visible{outline-offset:var(--space-1)}.gallery-error{color:var(--color-error-text);font-size:var(--font-size-sm);margin:0}.gallery-bulk{bottom:var(--space-4);z-index:10;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bento-tile);border-radius:var(--radius-tile);box-shadow:var(--bento-shadow-raised);flex-wrap:wrap;display:flex;position:sticky}.gallery-bulk-count{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.gallery-bulk-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:flex}.gallery-bulk-row{align-items:center;gap:var(--space-2);display:flex}.gallery-bulk-confirm{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.gallery-bulk-confirm-text{color:var(--color-error-text);font-size:var(--font-size-sm)}.gallery-inspect-overlay{z-index:50;padding:var(--space-6);background:var(--bento-inset);place-items:center;display:grid;position:fixed;inset:0}.gallery-inspect{grid-template-columns:minmax(0, var(--max-width-md)) minmax(0, var(--panel-width));gap:var(--space-5);padding:var(--space-5);max-width:var(--max-width-lg);max-height:var(--min-height-page);background:var(--bento-tile);border-radius:var(--radius-tile);box-shadow:var(--bento-shadow-raised);display:grid;position:relative;overflow:auto}.gallery-inspect-image{border-radius:var(--radius-tile-sm);width:100%;height:auto}.gallery-inspect-close{top:var(--space-3);right:var(--space-3);z-index:2;position:absolute}.gallery-inspect-details{gap:var(--space-4);align-content:start;display:grid}.gallery-inspect-caption{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary);margin:0}.gallery-inspect-section{gap:var(--space-2);display:grid}.gallery-inspect-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-label);color:var(--color-text-label)}.gallery-inspect-value{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.gallery-inspect-chips{gap:var(--space-1);flex-wrap:wrap;display:flex}.gallery-inspect-chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--color-bg-hover);color:var(--color-text-secondary);border-radius:var(--radius-full);font-size:var(--font-size-sm);display:inline-flex}.gallery-inspect-chip-remove{width:var(--space-4);height:var(--space-4);color:var(--color-text-muted);border-radius:var(--radius-full);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.gallery-inspect-chip-remove:hover{background:var(--color-bg-active);color:var(--color-text-primary)}.gallery-inspect-chip-remove:focus-visible{outline-offset:var(--space-1)}.gallery-inspect-row{gap:var(--space-2);display:flex}.gallery-channel-list{gap:var(--space-1) var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.gallery-channel-option{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;display:inline-flex}.gallery-channel-option input:disabled{cursor:not-allowed}.gallery-inspect-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.gallery-inspect-confirm{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-error-bg);border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.gallery-inspect-confirm-text{color:var(--color-error-text);font-size:var(--font-size-sm)}
