.demo-ribbon { background: #fff7d6; color: #4d3f00; font: 14px/1.4 system-ui, "Segoe UI", sans-serif; padding: 9px 16px; text-align: center; border-bottom: 1px solid #ecdc9a; position: relative; z-index: 60; }
.demo-ribbon a { color: #7a2f12; font-weight: 600; }
.flow .fl { display: block; font-weight: 600; font-size: 0.9375rem; margin: 14px 0 6px; }
.flow .txt { width: 100%; min-height: 52px; border: 1px solid var(--ink); padding: 0 12px; background: transparent; font: inherit; }
.flow .consent { display: flex; gap: 10px; align-items: flex-start; margin: 16px 0 0; font-size: 0.9375rem; cursor: pointer; }
.flow .consent input { width: 22px; height: 22px; margin-top: 2px; flex: none; accent-color: var(--green); }
.flow .hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
