/* Dylan's 14 October feedback: no decorative gray keylines. Focus is functional. */
.visual,.example-button:hover .visual,dialog,.stage,.stage.dark,.status,.page-map,.source-picture,.compact-links a,.service-path a{border:0;box-shadow:none}
.pattern-info,.workbench,.dish.compact,.dish.type,.map-header,.map-form,.map-footer,.map-directory a,.source-section,.faq-row{border:0}
.part:hover{outline-color:transparent}
.source-nav a,.category-buttons button,.field-sketch{border:0;background:#eee8de}
.source-nav a:hover{background:#e5dccb}
.category-buttons button[aria-pressed=true]{background:var(--accent);color:white}
.faq-row+.faq-row{margin-top:8px}
.stage:not(.dark){background:#f5eee5}
.stage button,.stage.dark button,.filters button,.controls button,.status{border:0}
.filters button{background:#eee8de}
.filters button[aria-pressed=true]{background:var(--ink);color:white}
.pattern[aria-pressed=true]{border-color:transparent}
/* Do not remove outlines from keyboard focus, or edit borders inside real screenshots. */
:focus-visible{outline:3px solid var(--focus,var(--accent));outline-offset:4px}
.part:focus-visible{outline-color:var(--focus);outline-offset:-4px}
/* Each preview has a deliberately different palette; these are candidates, not exclusive colours. */
.preview-photo,.canvas-photo{--dish-ink:#682b3a;--dish-muted:#79414b;--dish-accent:#a62845;background:#fff0e8;color:var(--dish-ink);border-radius:8px}
.preview-compact,.canvas-compact{--dish-ink:#f3f8ff;--dish-muted:#c4d3e5;--dish-accent:#d7ed77;background:#192c47;color:var(--dish-ink)}
.preview-editorial,.canvas-editorial{--dish-ink:#402043;--dish-muted:#58305d;--dish-accent:#402043;background:#f7d982;color:var(--dish-ink)}
.preview-type,.canvas-type{--dish-ink:#263b91;--dish-muted:#425389;--dish-accent:#263b91;background:#f2f4ff;color:var(--dish-ink);border-radius:8px}
.preview-photo .dish-copy,.canvas-photo .dish-copy{padding-inline:14px}
.preview-type,.canvas-type{padding-inline:16px}
.canvas-photo{background:transparent}
.canvas-photo .dish{background:#fff0e8;border-radius:8px;overflow:hidden}
.preview-editorial .dish,.canvas-editorial .dish{background:#f7d982;color:var(--dish-ink)}
.pattern-preview .dish-category,.pattern-preview .price,.canvas .dish-category,.canvas .price{color:var(--dish-muted)}
.preview-editorial .dish.editorial .dish-category,.preview-editorial .dish.editorial .price,.canvas-editorial .dish.editorial .dish-category,.canvas-editorial .dish.editorial .price{color:var(--dish-muted)}
.canvas .demo-button{background:var(--dish-accent);color:#fff}
.canvas-compact .demo-button{color:#192c47}
.canvas .demo-button:hover{filter:brightness(.93)}
.dish-image{background:transparent}
.dish-image img{object-fit:contain}
.map-card img{object-fit:contain}
.palette-note{font-size:12px;color:var(--muted);margin:6px 0}
.wire .dish-image{background:#f4f0e6}
