/* Gold Country Handyman — Blueprint & Timber custom styles */

html { scroll-behavior: smooth; }

body {
  font-family: "IBM Plex Sans", system-ui, sans-serif;
  background-color: #fff8f3;
  background-image:
    linear-gradient(#dcd0c0 1px, transparent 1px),
    linear-gradient(90deg, #dcd0c0 1px, transparent 1px);
  background-size: 40px 40px;
}

.font-technical-md, .font-technical-sm, .font-label-caps { font-family: "JetBrains Mono", ui-monospace, monospace; }

/* Blueprint blue grid fill for spec cards */
.blueprint-grid {
  background-color: #eef4fb;
  background-image:
    linear-gradient(#cfe2f9 1px, transparent 1px),
    linear-gradient(90deg, #cfe2f9 1px, transparent 1px);
  background-size: 10px 10px;
}

/* Dimension marker: thin steel line with end ticks */
.dimension-line {
  position: relative;
  height: 1px;
  background: #897365;
}
.dimension-line::before, .dimension-line::after {
  content: '';
  position: absolute;
  top: -3px;
  width: 1px;
  height: 7px;
  background: #897365;
}
.dimension-line::before { left: 0; }
.dimension-line::after { right: 0; }

/* Hard "sticker" drop shadow in the ink/navy color */
.hard-shadow { box-shadow: 4px 4px 0px 0px rgba(78, 96, 115, 1); transition: box-shadow 0.1s ease, transform 0.1s ease; }
.hard-shadow:hover { box-shadow: 6px 6px 0px 0px rgba(78, 96, 115, 1); transform: translate(-1px, -1px); }
.hard-shadow:active { transform: translate(4px, 4px); box-shadow: 0px 0px 0px 0px rgba(78, 96, 115, 1); }

/* Orange-shadow variant for elements sitting on navy */
.hard-shadow-orange { box-shadow: 4px 4px 0px 0px rgba(148, 74, 0, 1); transition: box-shadow 0.1s ease, transform 0.1s ease; }
.hard-shadow-orange:hover { box-shadow: 6px 6px 0px 0px rgba(148, 74, 0, 1); transform: translate(-1px, -1px); }
.hard-shadow-orange:active { transform: translate(4px, 4px); box-shadow: 0px 0px 0px 0px rgba(148, 74, 0, 1); }

/* 45-degree chamfered corner for technical accents */
.chamfer { clip-path: polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px); }

/* Carpenter X checkbox */
.xbox {
  flex: none;
  width: 20px; height: 20px;
  border: 2px solid #944a00;
  color: #944a00;
  display: flex; align-items: center; justify-content: center;
  font-family: "JetBrains Mono", monospace;
  font-weight: 700;
  line-height: 1;
}

.material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; }

/* FAQ accordion */
.faq summary { list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary .faq-icon { transition: transform 0.2s ease; }
.faq details[open] summary .faq-icon { transform: rotate(45deg); }
