:root{--accent:#4a6b8a}
body[data-site="favicon"] .brand-mark{background:var(--accent);color:#fff;font-size:.7rem}
.mode-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}
.mode-tab{border:1px solid var(--line,#d5cfbc);background:#fff;border-radius:999px;padding:.55rem 1rem;cursor:pointer;font:inherit}
.mode-tab.is-active{background:var(--accent);color:#fff;border-color:transparent}
.panel[hidden]{display:none!important}
.hint{color:var(--dim,#625f57);font-size:.9rem}
#out{white-space:pre-wrap;background:#fff;border:1px solid var(--line,#d5cfbc);border-radius:12px;padding:.8rem;min-height:3.5rem;font-family:ui-monospace,monospace;font-size:.88rem}
.preview-box{border:1px solid var(--line,#d5cfbc);border-radius:12px;background:#fff;padding:.75rem;min-height:80px}
.shadow-demo{height:120px;margin:1rem 0;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center}

/* polish: mobile form comfort */
@media (max-width:700px){
  .studio-card label{display:block;margin:.55rem 0}
  .studio-card input[type=text],.studio-card input[type=url],.studio-card input[type=number],.studio-card input[type=search],.studio-card textarea,.studio-card select{width:100%;max-width:100%;box-sizing:border-box}
  .mode-tabs{gap:.35rem}
  .mode-tab{padding:.5rem .85rem;font-size:.9rem}
  #out,pre#out{font-size:.82rem}
  video#qrVideo{max-width:100%}
  canvas#signCanvas{width:100%!important;height:auto!important}
}
