.personal-data-consent { color: #cbd5e1; font-size: .82rem; line-height: 1.5; margin: 14px 0 18px; text-align: left; }
.personal-data-consent label { align-items: flex-start; cursor: pointer; display: flex; gap: 10px; }
.personal-data-consent input { accent-color: #06b6d4; flex: none; height: 18px; margin: 2px 0 0; width: 18px; }
.personal-data-consent p { margin: 6px 0 0 28px; }
.personal-data-consent a, .cookie-notice a { color: #a8eaf2; text-decoration: underline; text-underline-offset: 3px; }
.personal-data-consent input:focus-visible, .personal-data-consent a:focus-visible, .cookie-notice a:focus-visible, .cookie-notice button:focus-visible { outline: 3px solid #06b6d4; outline-offset: 3px; }
.form-status { border-radius: 10px; font-size: .86rem; line-height: 1.5; margin-bottom: 14px; padding: 10px 12px; }
.form-status--success { background: rgba(34,197,94,.12); color: #a7f3b8; }
.form-status--error { background: rgba(251,113,133,.12); color: #fecdd3; }
.legal-links { align-items: center; display: flex; flex-wrap: wrap; gap: 10px 22px; justify-content: center; margin: 22px auto; padding: 12px; text-align: center; }
.legal-links a { color: #a8eaf2; font-size: .82rem; text-decoration: underline; text-underline-offset: 3px; }
.legal-links a:focus-visible { outline: 3px solid #06b6d4; outline-offset: 3px; }
.rag-demo-form { display: grid; grid-template-columns: minmax(0,1fr) auto; }
.rag-demo-form .form-input { grid-column: 1; grid-row: 1; }
.rag-demo-form > button { grid-column: 2; grid-row: 1; }
.rag-demo-form .personal-data-consent { grid-column: 1 / -1; grid-row: 2; margin: 2px 0 0; }
.cookie-notice { align-items: center; background: #111827; border: 1px solid rgba(148,163,184,.42); border-radius: 14px; bottom: 14px; box-shadow: 0 12px 34px rgba(0,0,0,.36); color: #e5edf5; display: flex; gap: 18px; justify-content: space-between; left: 50%; max-width: min(960px, calc(100% - 24px)); padding: 12px 16px; position: fixed; transform: translateX(-50%); width: 100%; z-index: 10000; }
.cookie-notice[hidden] { display: none; }
.cookie-notice p { font-size: .82rem; line-height: 1.45; margin: 0; }
.cookie-notice button { background: #06b6d4; border: 0; border-radius: 9px; color: #06111a; cursor: pointer; flex: none; font: inherit; font-size: .82rem; font-weight: 700; padding: 9px 16px; }
.cookie-notice button:hover { background: #67e8f9; }
@media (max-width: 600px) { .cookie-notice { align-items: flex-start; bottom: 8px; gap: 9px; padding: 11px 12px; } .cookie-notice button { padding: 8px 10px; } }
