/* Modern Minimal, adapted from Serafim's 21st.dev theme.
   Blue 600 is used for text-bearing actions to meet normal-text AA. */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url("/assets/fonts/inter-latin.woff2") format("woff2")}
:root{
  color-scheme:light;
  --paper:#ffffff;--paper-deep:#f3f4f6;--ink:#333333;--ink-soft:#626b7a;--soft:#626b7a;--muted:#626b7a;
  --line:#e5e7eb;--card:#ffffff;--accent:#2563eb;--accent-deep:#1d4ed8;--deep:#1d4ed8;--accentd:#1d4ed8;
  --accent-2:#3b82f6;--accent2:#3b82f6;--accent-light:#e0f2fe;--focus:#2563eb;--ok:#1d4ed8;
  --warn:#854d0e;--warn-bg:#fffbeb;--warn-border:#e7cf91;--radius:6px;--grad:var(--accent);
  --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:var(--sans);
  --shadow:0 4px 8px -1px rgb(0 0 0 / .07),0 1px 2px rgb(0 0 0 / .03);
}
body{font-family:var(--sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
body::before,.hero::before{display:none}
body h1,body h2,body h3,.wordmark,.brand,.demo-title{font-family:var(--sans);font-weight:650;letter-spacing:-.025em}
body h1{line-height:1.12;text-wrap:balance}
body h2,body h3{line-height:1.25}
.wordmark,.brand{font-weight:700;letter-spacing:-.035em}
.hero h1 em{font-style:normal}
a{text-underline-offset:3px;text-decoration-thickness:1px}
button,input,select,textarea{font-family:var(--sans);caret-color:var(--accent)}
input::placeholder,textarea::placeholder{color:var(--ink-soft);opacity:1}
::selection{background:var(--accent-light);color:#1e3a8a}
html{scrollbar-color:#9ca3af #f3f4f6}
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus)!important;outline-offset:4px}
.masthead,.bar{border-bottom:1px solid var(--line);padding-bottom:20px}
footer{border-top-color:var(--line);border-top-width:1px}
.masthead nav a:hover,.bar nav a:hover{text-decoration:underline;text-underline-offset:5px}
.tool,.answer,.toc,.nextstep,.g-card,.use,.step,.why,.featured,.qr-frame,.print-card,.result-card{box-shadow:var(--shadow);border-radius:var(--radius)}
.tool{border-color:var(--line)}
.stage,.results{background:#f9fafb}
.answer,.nextstep,.why,.pull{border-left:1px solid var(--line)}
.answer{background:#f9fafb}
.toc{background:#f3f4f6;box-shadow:none}
.featured{border:1px solid var(--line)}
body .cta,body .cta-band{background:#f3f4f6;color:var(--ink);border:1px solid var(--line);box-shadow:none;border-radius:var(--radius)}
body .cta h2,body .cta-band h2{color:var(--ink)}
body .cta p,body .cta-band p{color:var(--ink-soft)}
body .cta a.btn,body .cta-band .btn-band,.btn-main,.btn-donate,.hub-actions .primary-link,.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius);font-weight:600}
body .cta a.btn:hover,body .cta-band .btn-band:hover,.btn-main:hover,.btn-donate:hover,.hub-actions .primary-link:hover,.btn-primary:hover{background:var(--accent-deep)}
body a.cta{background:var(--accent);color:white;border-color:var(--accent)}
body a.cta:hover{background:var(--accent-deep)}
.btn,.btn-secondary,.embed-copy,.swap-btn,.file-btn,.preset,.color-input,.type-tabs,.type-tab,.choice label,.resource-preview,button,input.field,input[type=url],input[type=tel],input[type=text],input[type=number],input.wa-message,#tg-input,select,textarea{border-radius:var(--radius)}
input.field,input[type=url],input[type=tel],input[type=text],input[type=number],input.wa-message,#tg-input,select,textarea{background-color:#fff;border-color:#6b7280;border-width:1px}
.field:focus{box-shadow:0 0 0 3px #dbeafe;border-color:var(--accent)}
.btn-secondary,.embed-copy,.swap-btn{border:1px solid #6b7280;background:#fff;color:var(--ink)}
.btn-secondary:hover,.embed-copy:hover,.swap-btn:hover{background:var(--paper-deep)}
.type-tabs{background:#f3f4f6}
.type-tab.active{color:var(--accent-deep);background:#fff;box-shadow:0 1px 3px rgb(0 0 0 / .08)}
.preset.active{border-color:var(--accent);background:#eff6ff}
.badge,.badge.solid,.badge.badge-solid{border-radius:4px;letter-spacing:0;text-transform:none;font-weight:500}
.badge.solid,.badge.badge-solid{background:var(--accent-light);color:#1e3a8a;border:1px solid #bae6fd}
.support,.promise{border-radius:var(--radius)}
.hub .qr-demo{background:var(--accent);border-radius:var(--radius);box-shadow:var(--shadow)}
.hub .qr-demo .demo-title{color:white;letter-spacing:-.025em}
.hub .qr-demo:focus-visible{outline-color:#1e3a8a}
.resource-preview{background:#f3f4f6;border:1px solid var(--line)}
.resource-preview img{box-shadow:var(--shadow)}
.sign-sheet{color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow)}
.network-label,.fallback{color:var(--ink-soft)}
input::file-selector-button{border-color:#6b7280;font-family:var(--sans)}
.buttons button:disabled{color:#626b7a;background:#f3f4f6;border-color:#d1d5db}
.size,.result-list,table{font-variant-numeric:tabular-nums}
/* Keep the PDF/print canvas white and the QR image unmodified. */
@media print{
  body{background:#fff;color:#333}
  .sign-sheet{border:0;box-shadow:none}
  .sheet{box-shadow:none}
  .proof h1{font-family:var(--sans)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero h1 .rotator-word,.demo-action svg,.btn,.btn-main,.btn-band,.g-card,.print-card{transition:none}
  .qr-demo:hover .demo-action svg,.g-card:hover,.print-card:hover{transform:none}
}
