/* HSPingal app theme: qr. Loaded after the app's own styles. */
:root {
  --bg: var(--c-bg);
  --surface: #fff3a6;
  --card: #ffffff;
  --card2: #fff9d6;
  --border: #111111;
  --border2: #111111;
  --accent: #111111;
  --accent2: #e63600;
  --on-accent: #ffd91f;
  --text: var(--c-fg);
  --text2: var(--c-sub);
  --muted: #5d5412;
  --success: #0a7a36;
  --ok: #0a7a36;
  --danger: #b91c1c;
  --warn: #b45309;
  --warning: #b45309;
  --glow: rgba(17,17,17, .2);
  --app-w: 1000px;
  --app-font: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;
  color-scheme: light;
}

.app-mast { background: var(--c-bg); }

/* Print-shop poster: hard black rules, no radii, everything monospaced. */
:root { --mast-line: 2px solid #111; --h1-track: -0.05em; }
.app-by { border: 2px solid #111; border-radius: 0; color: #111; }
.qr-input, .opt-select, .opt-color, .canvas-wrap, .gen-btn, .dl-btn { border: 2px solid #111 !important; border-radius: 0 !important; }
.qr-input { font-weight: 600; font-size: 1rem; padding: 14px; min-width: 0; }
.gen-btn { flex: none; }
.gen-btn { font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.dl-btn { background: #111 !important; color: #ffd91f !important; }
.opt-label { color: #111; }
.app-body { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px 28px; }
.input-row, .options { margin: 0 !important; }
.canvas-wrap { box-shadow: 8px 8px 0 #111; min-height: 330px; padding: 26px; }
#qr-output canvas, #qr-output img { max-width: 100%; height: auto; border-radius: 0; }
.placeholder { color: #5d5412; }
.app-foot { border-top: 2px solid #111; color: #3d3606; }
@media (min-width: 800px) {
  .app-body { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); grid-template-rows: auto 1fr; align-items: start; }
  .input-row { grid-column: 1; grid-row: 1; }
  .options { grid-column: 1; grid-row: 2; grid-template-columns: 1fr 1fr !important; }
  .options > div:first-child { grid-column: 1 / -1; }
  .canvas-wrap { grid-column: 2; grid-row: 1 / span 2; min-height: 460px; }
}
