/* crashPrints: the crash* house style (site.css) with a blue accent and a
   layer-line logo instead of the router kerf. */
body.print {
  --accent: #2b6cf0;
  --accent-ink: #ffffff;
}
body.print .btn.primary:hover { background: #1f58d0; }

.logo .layers-mark { display: inline-grid; gap: 3px; margin: 0 6px; transform: translateY(1px); }
.logo .layers-mark i { display: block; width: 14px; height: 4px; border-radius: 2px; background: var(--accent); }
.logo .layers-mark i:nth-child(1) { width: 9px; margin-left: 3px; }
.logo .layers-mark i:nth-child(2) { width: 12px; margin-left: 1px; }
.logo.small .layers-mark { gap: 2px; } .logo.small .layers-mark i { height: 3px; }

/* drop art: a part growing layer by layer */
.drop-art .bed { fill: var(--ink); opacity: .85; }
.drop-art .layer { stroke: var(--accent); stroke-width: 4; stroke-linecap: round; fill: none; stroke-dasharray: 60; animation: grow 3.2s ease-in-out infinite; }
.drop-art .nozzle { stroke: var(--ink); stroke-width: 3; }
.drop-art .nozzle-tip { fill: var(--ink); }
@keyframes grow { 0% { stroke-dashoffset: 60; } 60%, 100% { stroke-dashoffset: 0; } }
@media (prefers-reduced-motion: reduce) { .drop-art .layer { animation: none; stroke-dasharray: none; } }

/* workspace */
.orient-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 10px 0; }
.orient-bar .orient-note { color: var(--muted); font-size: 13px; }
.scale-in { width: 72px !important; padding: 5px 8px !important; font-size: 13px !important; }
.viewport.print-view { background: radial-gradient(ellipse at 50% 30%, #fbf8f1, #e9e2d4); }
.print-legend { position: static; display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 8px 0 0; font-size: 13px; color: var(--muted); background: none; border: 0; padding: 0; }
.print-legend .sw { display: inline-block; width: 12px; height: 12px; border-radius: 3px; vertical-align: -1px; margin-right: 6px; background: #d9d4c9; border: 1px solid var(--line-strong); }
.print-legend .sw.sup { background: #e5482a; border-color: #e5482a; }
.print-legend .sw.bedsw { background: transparent; border: 2px solid #2b6cf0; opacity: .6; }

/* layer height / strength segmented pickers */
.wide-seg { display: flex; width: 100%; }
.wide-seg button { flex: 1; display: grid; gap: 2px; padding: 9px 6px; }
.wide-seg button small { font: 500 11px/1 var(--mono); opacity: .7; }

/* colour chips */
.color-chip { display: inline-flex; align-items: center; gap: 6px; }
.dot { display: inline-block; width: 12px; height: 12px; border-radius: 50%; border: 1px solid rgba(0,0,0,.25); vertical-align: -1px; margin-right: 2px; }
.mat-table td small { color: var(--muted); }
.viewport.print-view { border-top: 1px solid var(--line-strong); border-radius: var(--radius); }
