/* Gallery keeps the existing square, monochrome editorial UI; films retain their color. */
.art-section { scroll-margin-top:32px; }
/* The preceding product section already supplies the shared section gap. */
.products-section + .art-section { padding-top:0; }
.art-grid { columns:3; column-gap:24px; }
.art-home-grid { display:grid; columns:initial; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:start; }
.art-home-grid.is-masonry { grid-auto-rows:1px; row-gap:0; }
.art-home-grid>.art-card { display:block; align-self:start; height:auto; margin-bottom:0; }
.art-home-grid .art-card-copy { display:block; }
.art-home-grid .art-card-copy>.text-link { margin-top:0; }
.art-home-more.button { display:flex; width:100%; justify-content:space-between; min-height:64px; margin-top:32px; padding:20px 24px; font-size:var(--text-control); background:var(--paper); color:var(--ink); border:1px solid var(--line); }
.art-home-more .icon { flex:0 0 22px; filter:none; }
@media(hover:hover) {
 .art-home-more.button:hover { color:var(--paper); background:var(--ink); border-color:var(--line); }
 .art-home-more:hover .icon { filter:invert(1); }
}
.art-card { display:inline-block; vertical-align:top; width:100%; min-width:0; max-width:100%; padding:26px; margin-bottom:24px; border:1px solid var(--line); break-inside:avoid; background:var(--paper); }
.art-card-top { display:flex; justify-content:space-between; gap:16px; font-size:var(--text-meta); color:var(--muted); padding-bottom:22px; }
.art-video-frame { position:relative; background:#111; overflow:hidden; border-radius:0; }
.art-video-frame video { display:block; width:100%; height:auto; max-height:680px; object-fit:contain; background:#111; border-radius:0; }
.art-card-copy h3 { font:500 var(--text-card)/1.35 var(--serif); margin:24px 0 16px; overflow-wrap:anywhere; }
.art-card-copy .art-summary { font-size:var(--text-body); line-height:1.75; margin-bottom:24px; overflow-wrap:anywhere; }
.art-author { font-size:var(--text-meta); line-height:1.7; color:var(--muted); margin:14px 0; overflow-wrap:anywhere; }
.art-author a { text-decoration:underline; text-underline-offset:4px; }
.art-card .text-link { font-size:var(--text-control); }
.art-archive { padding-top:0; }
.art-archive-count { font-size:var(--text-meta); margin-bottom:26px; }
.art-detail { padding-bottom:72px; }
.art-detail .page-heading { max-width:960px; }
.art-detail .art-video-frame { max-width:1120px; margin:0 auto; }
.art-detail-footer { display:flex; flex-wrap:wrap; gap:24px; align-items:center; justify-content:space-between; padding-top:28px; }
.art-detail-footer p { font-size:var(--text-meta); }
.studio-layout:has(#studio-artworks:not([hidden])) .studio-savebar { display:none; }
.art-settings { margin-block:32px; padding:24px; border:1px solid var(--line); background:var(--surface); }
.art-settings h3,.art-upload-area h3 { font:500 var(--text-card)/1.35 var(--serif); margin-bottom:24px; }
.art-settings label { margin-bottom:22px; }
.art-switch { display:flex; align-items:flex-start; gap:14px; font-size:var(--text-control); line-height:1.7; cursor:pointer; }
.art-switch input { width:22px; height:22px; margin-top:4px; accent-color:var(--ink); flex-shrink:0; }
#studio-artworks input:not([type=checkbox]):not([type=file]),#studio-artworks textarea,#studio-artworks select { width:100%; min-width:0; padding:12px; font:var(--text-control)/1.7 var(--sans); border:1px solid var(--line); border-radius:0; color:var(--ink); background:var(--paper); }
.art-library-toolbar { display:flex; flex-wrap:wrap; gap:24px; justify-content:space-between; align-items:flex-end; margin-block:24px; }
.art-library-toolbar label { min-width:min(240px,100%); }
.art-editor-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-block:28px; }
.art-editor-fields>label { min-width:0; }
.art-editor-fields .full { grid-column:1/-1; }
.art-editor-preview { margin-top:28px; }
.art-editor-preview p { font-size:var(--text-meta); margin-top:14px; overflow-wrap:anywhere; }
.art-editor-actions { display:flex; flex-wrap:wrap; gap:16px; border-block:1px solid var(--line); padding-block:24px; margin-block:28px; }
.art-editor-actions .button { white-space:normal; justify-content:center; }
#art-editor-status { position:sticky; bottom:12px; background:var(--paper); padding:16px; border:1px solid var(--line); overflow-wrap:anywhere; }
#art-editor-status:empty { display:none; }
#studio-artworks .skill-dropzone progress { accent-color:var(--ink); }
@media(max-width:1023px) { .art-grid { columns:2; } .art-home-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:639px) {
  .art-grid { columns:1; }
  .art-home-grid { grid-template-columns:minmax(0,1fr); }
  .art-editor-fields { grid-template-columns:minmax(0,1fr); }
  .art-card { padding:22px; }
  .art-card-copy h3 { font-size:23px; }
  .art-settings { padding:20px; }
  .art-editor-actions .button { flex:0 0 auto; }
}

.art-card-top { flex-wrap:wrap; }
.art-summary { white-space:pre-line; }
.art-source { font-size:var(--text-meta); margin-block:16px; overflow-wrap:anywhere; }
.art-source a { text-decoration:underline; text-underline-offset:4px; }
.art-detail-media { max-width:1000px; margin-inline:auto; }
.art-description { max-width:900px; margin:40px auto; }
.art-description h2 { font:500 var(--text-section)/1.3 var(--serif); margin-bottom:24px; }
.art-description p { font:var(--text-body)/1.7 var(--sans); white-space:pre-wrap; overflow-wrap:anywhere; }
.art-link-import { border:1px solid var(--line); padding:24px; margin-block:32px; }
.art-link-import h3 { font:500 var(--text-card)/1.35 var(--serif); }
.art-link-import p,.art-link-import li { font-size:var(--text-body); overflow-wrap:anywhere; }
.art-import-input-row { display:flex; flex-direction:row; flex-wrap:nowrap; align-items:end; gap:16px; margin-top:24px; }
.art-import-input-row label { flex:1; min-width:0; margin:0; }
.art-import-input-row button { flex:0 0 auto; }
#art-import-status { margin-top:20px; font-size:var(--text-meta); }
#art-import-preview { margin-top:24px; padding-top:24px; border-top:1px solid var(--line); }
#art-import-preview video { display:block; width:100%; height:auto; max-height:440px; object-fit:contain; background:#111; margin-block:24px; }
.art-import-images,.art-editor-images { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-block:24px; }
.art-import-images img,.art-editor-images img { display:block; width:100%; height:auto; max-height:360px; object-fit:contain; background:var(--surface); }
.art-editor-images>div { min-width:0; border:1px solid var(--line); padding:16px; }
.art-editor-images p { font-size:var(--text-meta); margin-block:16px; overflow-wrap:anywhere; }
.art-editor-images .tool-actions { margin-top:20px; }
.art-editor-preview .art-video-frame { max-width:100%; }
.art-editor-preview .art-video-frame video { max-height:400px; }
.art-import-source { padding:20px; margin-block:24px; border:1px solid var(--line); }
.art-import-source summary { font-size:var(--text-control); cursor:pointer; }
.art-import-source p,.art-import-source li { font-size:var(--text-meta); overflow-wrap:anywhere; }
.art-import-source pre { font:var(--text-body)/1.7 var(--sans); white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:639px) {
 .art-link-import { padding:18px; }
 .art-import-input-row { gap:12px; }
 .art-editor-images { grid-template-columns:minmax(0,1fr); }
}
