/* Ink Friendly — shared generator styles + the print pipeline.
   D5 site-level; kit tokens only on screen. In print, everything
   disappears except the sheet, which fills the page exactly. */

.sheet-wrap {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 1rem;
  display: flex;
  justify-content: center;
  margin: 0.9rem 0 0;
}

#sheet {
  display: block;
  width: min(100%, 26rem);
  height: auto;
  background: #ffffff;
  box-shadow: 0 1px 4px rgba(27, 30, 35, 0.18);
}

.gen-controls {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
  gap: 0.6rem 1rem;
  margin: 0.75rem 0;
}

.gen-controls > label,
.gen-controls .gen-field {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  font-size: 0.85rem;
  color: var(--ink-soft);
}

.gen-controls select,
.gen-controls input[type="number"] {
  font: inherit;
  font-size: 0.9rem;
  padding: 0.4rem 0.55rem;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: var(--panel);
  color: var(--ink);
}

.gen-controls .spacing-row {
  display: flex;
  gap: 0.4rem;
}

.gen-controls .spacing-row input { flex: 1 1 auto; min-width: 4rem; }
.gen-controls .spacing-row select { flex: 0 0 auto; }

@media print {
  .site-header,
  .site-footer,
  .no-print {
    display: none !important;
  }
  body { background: #ffffff; margin: 0; }
  main.wrap { max-width: none; padding: 0; margin: 0; }
  /* The sheet's ancestry is main.wrap > .tool-panel > .sheet-wrap > #sheet.
     Hide only branches OFF that path — never an ancestor of the sheet,
     because display:none on an ancestor cannot be overridden below it. */
  main.wrap > *:not(.tool-panel) { display: none !important; }
  .tool-panel > *:not(.sheet-wrap) { display: none !important; }
  .tool-panel {
    border: 0;
    border-radius: 0;
    padding: 0;
    margin: 0;
    background: #ffffff;
    display: block;
  }
  .sheet-wrap {
    border: 0;
    border-radius: 0;
    padding: 0;
    margin: 0;
    background: #ffffff;
    display: block;
  }
  #sheet {
    width: auto;
    box-shadow: none;
  }
}
