:root { color-scheme: light dark; }
* { box-sizing: border-box; }
body { margin: 0; font: 16px/1.5 system-ui, -apple-system, Segoe UI, Roboto, sans-serif; }
.wrap { max-width: 960px; margin: 24px auto; padding: 0 16px; }
.card { background: rgba(0,0,0,0.03); border: 1px solid rgba(0,0,0,0.1); border-radius: 12px; padding: 16px; }
h1 { margin: 0 0 8px; }
.muted { opacity: 0.7; }
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Roboto Mono", monospace; }
.row { display: flex; gap: 12px; align-items: center; margin: 12px 0; }
label { min-width: 150px; }
input[type="number"] { width: 240px; padding: 8px; border-radius: 8px; border: 1px solid rgba(0,0,0,0.2); }
button, .btn {
  background: #0b6cff; color: white; border: 0; padding: 10px 14px; border-radius: 10px;
  cursor: pointer; text-decoration: none; display: inline-block;
}
button:disabled { opacity: 0.6; cursor: not-allowed; }
hr { border: none; border-top: 1px solid rgba(0,0,0,0.1); margin: 16px 0; }
.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.result { min-height: 160px; }
.qr { display: block; max-width: 280px; width: 100%; border-radius: 12px; margin-top: 12px; }
.error { color: #c00; }
@media (max-width: 800px) { .grid { grid-template-columns: 1fr; } }

/* House Footer v1.2 */
.hoc-footer{border-top:1px solid rgba(255,255,255,.08);padding:34px 16px}
.hoc-footer .hoc-inner{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}
.hoc-footer .hoc-title{font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.hoc-footer .hoc-sub{opacity:.88}
.hoc-footer .hoc-stamp{opacity:.85;margin-top:6px;font-weight:700}
.hoc-footer .hoc-legal{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;opacity:.95}
.hoc-footer .hoc-legal a{color:inherit;text-decoration:underline}
.hoc-footer .hoc-dot{opacity:.45}
.hoc-footer .hoc-copy{opacity:.7;font-size:.92rem}

/* ============================================================
   HOUSE FOOTER v1.3 (RAD) — centered, professional, mobile-clean
   ============================================================ */


/* HOC FOOTER (INDEX) — BAG-style centered */
.hoc-footer{
  margin-top:64px;
  border-top:1px solid rgba(148,163,184,.45);
  background:linear-gradient(180deg,#fbfdff 0%, #f6f9fc 100%);
  color:#0f172a;
  padding:34px 16px;
  text-align:center;
}
.hoc-footer__wrap{
  max-width:980px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
}
.hoc-footer__brand{
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.hoc-footer__sub,
.hoc-footer__sub2{
  color:#475569;
  line-height:1.35;
}
.hoc-footer__nav{
  margin-top:6px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:10px 14px;
}
.hoc-footer__nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,.45);
  background:#ffffff;
  color:#0f172a;
  text-decoration:none;
  font-weight:800;
  font-size:.88rem;
  line-height:1;
}
.hoc-footer__dot{ opacity:.45; }
.hoc-footer__legal{
  margin-top:8px;
  color:#475569;
  font-size:.92rem;
}
/* END HOC FOOTER (INDEX) */
