/* Knox Brand Agreement 1280 - front-end styles (v1.2.2) */
:root{
  --knox-beige:#cec4ac;
  --text:#111;
  --muted:#555;
  --bg:#fff;
  --panel:#f7f7f7;
  --border:#e6e6e6;
  --danger:#c62828;
  --success:#1b5e20;
}

.kba1280-wrap{max-width:1280px;margin:0 auto;padding:24px;background:var(--bg);color:var(--text);font-family:"Titillium Web", system-ui, -apple-system, Segoe UI, Roboto, Arial, Helvetica, sans-serif;line-height:1.5}
.kba1280-header{padding:24px 0 8px;border-bottom:1px solid var(--border)}
.kba1280-h1{font-size:clamp(28px,3.2vw,40px);margin:0 0 6px}
.kba1280-sub{color:var(--muted)}
.kba1280-badge{display:inline-block;background:var(--knox-beige);color:#111;padding:2px 8px;border-radius:999px;font-weight:600;letter-spacing:.2px}
.kba1280-pdf{margin:24px 0;border:1px solid var(--border);background:var(--panel);border-radius:12px;overflow:hidden}
.kba1280-pdf header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:0;border-bottom:1px solid var(--border)}
.kba1280-actions{display:flex;gap:8px;align-items:center}
.kba1280-btn{appearance:none;border:1px solid var(--border);background:#fff;color:#111;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:600;transition:.2s}
.kba1280-btn:hover{transform:translateY(-1px)}
.kba1280-btn.primary{background:var(--knox-beige)}
.kba1280-btn.ghost{background:transparent}
.kba1280-btn.danger{background:#fff;border-color:#f3c9c9;color:#a32121}
.kba1280-object{width:100%;height:70vh;background:#fff}
.kba1280-agree{margin:24px 0;padding:20px;border:1px solid var(--border);border-radius:12px;background:linear-gradient(#fff,#fbfbfb)}
.kba1280-agree h2{margin:0 0 10px}
.kba1280-legal{color:var(--muted);font-size:15px}

.kba1280-form{margin:24px 0;display:grid;gap:16px}
.kba1280-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.kba1280-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
@media (max-width:800px){.kba1280-grid,.kba1280-grid-3{grid-template-columns:1fr} .kba1280-object{height:60vh}}
.kba1280-field{display:flex;flex-direction:column}
.kba1280-label{font-weight:600;margin-bottom:6px;display:block}
.kba1280-input, .kba1280-textarea{border:1px solid var(--border);border-radius:10px;padding:12px 12px;font-size:16px;background:#fff}
.kba1280-textarea{min-height:96px}
.kba1280-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.kba1280-sig{border:1px dashed var(--border);border-radius:12px;background:#fff;position:relative}
.kba1280-sig canvas{width:100%;height:180px;display:block;border-radius:12px}
.kba1280-sig-hint{position:absolute;inset:auto 12px 12px auto;color:var(--muted);font-size:12px;background:#fff;padding:4px 6px;border:1px solid var(--border);border-radius:6px}
.kba1280-actions-bottom{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.kba1280-note{font-size:14px;color:var(--muted)}
.kba1280-status{padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:#fff;display:none}
.kba1280-status.ok{display:block;border-color:#cfe7d3;color:var(--success);background:#f5fbf5}
.kba1280-status.err{display:block;border-color:#f2c6c6;color:#a32121;background:#fff7f7}
.kba1280-req{color:#a32121}
.kba1280-pill{padding:2px 8px;border:1px solid var(--border);border-radius:999px;font-size:12px;color:var(--muted)}
.kba1280-tiny{font-size:12px;color:var(--muted)}
.kba1280-checkbox{display:flex;gap:10px;align-items:flex-start}
.kba1280-checkbox input{margin-top:4px}
.kba1280-right{margin-left:auto}
