:root{--color-primary:#3b785d;--color-primary-rgb:59, 120, 93;--color-secondary:#f5f5f5;--color-secondary-alt:#3b785d;--color-accent:#f39600;--color-accent-secondary:#e87647;--color-text:#333;--color-text-muted:#666;--header-height:56px;--banner-height:220px;--sidebar-width:240px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000d;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--transition:.2s ease}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{color:var(--color-text);background-color:var(--color-secondary-alt);-webkit-font-smoothing:antialiased;font-family:Titillium Web,sans-serif}button,input[type=submit],input[type=button],input[type=reset]{font-weight:400}#root{height:100%}.app{flex-direction:column;height:100%;min-height:100vh;display:flex;overflow:hidden}.page-header{z-index:1000;background-color:var(--color-secondary);min-height:3.5rem;color:var(--color-text);box-shadow:var(--shadow-sm);border-bottom:1px solid rgba(var(--color-primary-rgb), .12);align-items:center;padding:0 1.5rem;display:flex;position:fixed;top:0;left:0;right:0}.page-header__nav-layer{pointer-events:none;flex:1;justify-content:center;align-items:center;display:flex}.page-header__nav-layer .page-header__nav{pointer-events:auto}.page-header__nav{flex-wrap:wrap;justify-content:center;align-items:center;margin:0;padding:0;list-style:none;display:flex}.page-header__item{color:#000;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;margin:0 15px;padding:12px 15px;font-family:Lato,sans-serif;font-size:16px;font-weight:300;line-height:2em;text-decoration:none;position:relative;overflow:hidden}.page-header__item--active{cursor:default}.page-header__right{z-index:1;align-items:center;gap:.75rem;display:flex;position:absolute;top:0;bottom:0;right:1.5rem}.page-header__user{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.8rem;overflow:hidden}.page-header__logout{border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;transition:background-color var(--transition), color var(--transition);background:0 0;padding:.35rem .65rem;font-family:inherit;font-size:.8rem;font-weight:400}.page-header__logout:hover{background-color:var(--color-primary);color:var(--color-secondary)}.page-header__badge{background-color:rgba(var(--color-primary-rgb), .12);color:var(--color-primary);border-radius:var(--radius-sm);padding:.25rem .5rem;font-size:.7rem;font-weight:600}.page-header__hamburger{cursor:pointer;z-index:2;background:0 0;border:none;padding:.5rem;display:none}.page-header__hamburger-icon,.page-header__hamburger-icon:before,.page-header__hamburger-icon:after{background:var(--color-text);border-radius:1px;width:20px;height:2px;transition:transform .2s,opacity .2s;display:block}.page-header__hamburger-icon{position:relative}.page-header__hamburger-icon:before,.page-header__hamburger-icon:after{content:"";position:absolute;left:0}.page-header__hamburger-icon:before{top:-6px}.page-header__hamburger-icon:after{top:6px}.page-header__hamburger-icon--open{background:0 0}.page-header__hamburger-icon--open:before{top:0;transform:rotate(45deg)}.page-header__hamburger-icon--open:after{top:0;transform:rotate(-45deg)}.page-header__mobile-menu{display:none}.page-header__mobile-item{color:#373737;cursor:pointer;border-bottom:1px solid #f0f0f0;padding:10px 2em;font-family:Lato,sans-serif;font-size:16px;font-weight:700;text-decoration:none;display:block}.page-header__mobile-item--active{cursor:default}.page-header__mobile-item:last-child{border-bottom:none}@media (width<=1100px){.page-header{padding:0 .75rem}.page-header__hamburger{align-items:center;display:flex}.page-header__nav-layer{display:none}.page-header__mobile-menu{top:var(--header-height);background:var(--color-secondary);box-shadow:var(--shadow-md);border-bottom:1px solid rgba(var(--color-primary-rgb), .12);z-index:999;flex-direction:column;animation:.2s ease-out modal-slide-in;display:flex;position:absolute;left:0;right:0}.page-header__right{gap:.5rem;right:.75rem}.page-header__user{display:none}.page-header__logout{padding:.3rem .5rem;font-size:.75rem}.page-header__badge{padding:.2rem .4rem;font-size:.65rem}}.banner{flex-shrink:0;width:100%;min-height:200px;position:relative}.banner__image{width:100%;height:var(--banner-height);opacity:.5;background-image:url(/tram.jpg);background-position:50%;background-size:cover}.banner__title{color:#fff;text-align:center;text-shadow:0 1px 3px #00000080;justify-content:center;align-items:center;margin:0;padding:1rem;font-size:clamp(1.25rem,4vw,1.75rem);font-weight:700;display:flex;position:absolute;inset:0}.app-main{min-height:0;padding:1.5rem;padding-top:calc(var(--header-height) + 1rem);background-color:var(--color-secondary-alt);flex-direction:column;flex:1;display:flex;overflow:hidden}.app-main__content{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.app-main__content--scrollable{overflow-y:auto}.chat-layout{flex:1;justify-content:center;min-height:0;display:flex;position:relative}.chat-layout__inner{flex-direction:column;flex:1;width:100%;max-width:min(940px,100vw - 3rem);min-height:0;display:flex;position:relative;overflow:hidden}.chat-sidebar{flex-direction:column;gap:.5rem;margin-right:1rem;padding-top:.25rem;display:flex;position:absolute;top:0;right:100%}.chat-sidebar__btn{border:1px solid rgba(var(--color-primary-rgb), .25);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:color var(--transition), border-color var(--transition), background-color var(--transition);white-space:nowrap;background:0 0;align-items:center;gap:.5rem;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;font-weight:400;display:flex}.chat-sidebar__btn:hover{color:var(--color-primary);border-color:var(--color-primary);background-color:rgba(var(--color-primary-rgb), .06)}.chat-sidebar__icon{flex-shrink:0}.chat-sidebar__label{font-weight:400}[data-tooltip]{position:relative}[data-tooltip]:after,[data-tooltip]:hover:after,[data-tooltip][data-tooltip-position=top]:after,[data-tooltip][data-tooltip-position=top]:hover:after,.message-actions [data-tooltip]:after{content:none;display:none}.floating-tooltip{color:var(--color-secondary);border-radius:var(--radius-sm);white-space:normal;pointer-events:none;z-index:2147483647;background-color:#000000e6;min-width:140px;padding:.45rem .65rem;font-size:.75rem;line-height:1.35;position:fixed;transform:translate(0);box-shadow:0 4px 14px #00000040}.chat-sidepane-backdrop{z-index:900;opacity:0;pointer-events:none;transition:opacity var(--transition);background-color:#0000004d;position:fixed;inset:0}.chat-sidepane-backdrop--visible{opacity:1;pointer-events:auto}.chat-sidepane{background-color:var(--color-secondary);width:min(320px,85vw);max-width:320px;box-shadow:var(--shadow-lg);z-index:901;transition:transform var(--transition);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden;transform:translate(-100%)}.chat-sidepane--open{transform:translate(0)}.chat-sidepane__header{border-bottom:1px solid rgba(var(--color-primary-rgb), .12);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.chat-sidepane__title{color:var(--color-text);margin:0;font-size:1rem;font-weight:600}.chat-sidepane__close{width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition), background-color var(--transition);background:0 0;border:none;padding:0;font-size:1.5rem;font-weight:400;line-height:1}.chat-sidepane__close:hover{color:var(--color-text);background-color:rgba(var(--color-primary-rgb), .08)}.chat-sidepane__list{flex:1;padding:.5rem;overflow-y:auto}.chat-sidepane__empty{color:var(--color-text-muted);margin:0;padding:1.5rem;font-size:.9rem}.chat-sidepane__item{border-radius:var(--radius-sm);text-align:left;cursor:pointer;width:100%;transition:background-color var(--transition);background:0 0;border:none;flex-direction:column;align-items:flex-start;margin-bottom:.25rem;padding:.75rem 1rem;display:flex}.chat-sidepane__item:hover{background-color:rgba(var(--color-primary-rgb), .06)}.chat-sidepane__item--active{background-color:rgba(var(--color-primary-rgb), .12);color:var(--color-primary)}.chat-sidepane__item-name{color:inherit;font-size:.95rem;font-weight:500}.chat-sidepane__item-date{color:var(--color-text-muted);margin-top:.2rem;font-size:.75rem}.chat-sidepane__item--active .chat-sidepane__item-date{color:rgba(var(--color-primary-rgb), .8)}.chat-view{background-color:var(--color-secondary);border-radius:var(--radius-sm);width:100%;min-width:0;min-height:0;box-shadow:var(--shadow-lg);border:1px solid #00000014;flex-direction:column;flex:1;display:flex;overflow:hidden}.stepper{background-color:var(--color-secondary);border-radius:var(--radius-sm);flex-direction:column;flex-shrink:0;width:100%;margin-bottom:.75rem;padding:.5rem;display:flex}.stepper__steps{flex:1;justify-content:space-between;align-items:stretch;display:flex}.stepper__step{cursor:pointer;transition:all var(--transition);text-align:center;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:0 0 .5rem;font-family:inherit;display:flex}.stepper__step:hover:not(.stepper__step--active):not(.stepper__step--disabled){background-color:rgba(var(--color-primary-rgb), .04)}.stepper__step--disabled,.stepper__step--disabled:hover{cursor:not-allowed}.stepper__step--disabled .stepper__step-label,.stepper__step--disabled .stepper__step-title{color:#d1d5db}.stepper__bar{background:#e5e7eb;border-radius:9999px;flex-shrink:0;width:100%;height:8px;position:relative;overflow:hidden}.stepper__bar:before{content:"";left:var(--stepper-fill-start,0);width:var(--stepper-fill-width,0);background:var(--color-accent);height:100%;transition:left var(--transition), width var(--transition);border-radius:9999px;position:absolute;top:0}.stepper__step-label{text-transform:uppercase;letter-spacing:.05em;color:#d1d5db;margin-bottom:0;font-size:.75rem;font-weight:700}.stepper__step--active .stepper__step-label{color:var(--color-accent)}.stepper__step-title{color:#d1d5db;font-size:1rem;font-weight:600}.stepper__step--active .stepper__step-title{color:var(--color-accent)}.stepper--thick .stepper__bar{height:8px}@media (width<=640px){.stepper__step-label{letter-spacing:.02em;font-size:.65rem}.stepper__step-title{font-size:.75rem}.stepper__step{padding:0 .125rem .375rem}}@media (width<=480px){.stepper__step-title{display:none}}.chat-view__messages{overflow-anchor:none;background-color:var(--color-secondary);flex:1;min-height:0;padding:1.5rem;overflow-y:auto}.next-view{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.next-view__scroll{background-color:var(--color-secondary);flex:1;min-height:0;padding:1.5rem;overflow-y:auto}.chat-view__error{color:#b91c1c;border-radius:var(--radius-sm);background-color:#fef2f2;border:1px solid #fecaca;margin:0 1.5rem 1rem;padding:.75rem 1rem}.chat-view__input-container{background-color:var(--color-secondary);border-top:1px solid rgba(var(--color-primary-rgb), .15);flex-shrink:0;padding:1.25rem 1.5rem}.chat-view__disclaimer{color:var(--color-text-muted);text-align:center;margin:.75rem 0 0;font-size:.75rem;line-height:1.4}.chat-view__disclaimer-link{font:inherit;color:var(--color-accent-secondary);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.chat-view__disclaimer-link:hover{color:#c45e33}.modal{background-color:var(--color-secondary);border-radius:var(--radius-lg,.75rem);text-align:left;border:none;outline:none;width:90%;max-width:32rem;padding:0;animation:.22s ease-out modal-fade-in;overflow:hidden}.modal:focus{outline:none}.modal--wide{max-width:56rem}.modal::backdrop{background-color:#00000080;animation:.22s ease-out modal-backdrop-fade-in}.modal.modal--closing::backdrop{animation:.18s ease-in forwards modal-backdrop-fade-out}.modal__content{flex-direction:column;max-height:80vh;font-family:inherit;animation:.26s cubic-bezier(.22,1,.36,1) modal-slide-in;display:flex;box-shadow:0 10px 40px #0000001f}.modal.modal--closing .modal__content{animation:.18s ease-in forwards modal-slide-out}.modal__header{background-color:var(--color-primary);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.modal__title{color:var(--color-secondary);margin:0;font-family:inherit;font-size:1.125rem;font-weight:600}.modal__close{border-radius:var(--radius-sm,.25rem);cursor:pointer;width:2rem;height:2rem;color:var(--color-secondary);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:flex}.modal__close:hover{color:var(--color-secondary);background-color:#fff3}.modal__close svg{width:1.25rem;height:1.25rem}.modal__body{color:var(--color-text);padding:1.5rem;font-size:.9375rem;line-height:1.6;overflow-y:auto}.modal__body h3{margin:1.25rem 0 .5rem;font-size:1rem;font-weight:600}.modal__body h3:first-child{margin-top:0}.modal__body p{margin:0 0 .75rem}.modal__body a{color:var(--color-primary);text-decoration:underline}.modal__body a:hover{color:var(--color-primary-dark,#1a4d2e)}.chat-view__completed{background-color:var(--color-secondary-alt);border-radius:var(--radius-md);color:#fff;margin:1rem 1.5rem;padding:1rem 1.25rem}.klachtenformulier{width:100%;max-width:none;margin:0;padding:1.5rem 0 0}.klachtenformulier__form{flex-direction:column;gap:2rem;display:flex}.klachtenformulier__disclaimer{color:#6b7280;border-radius:var(--radius-sm);text-align:left;background:#f9fafb;border:1px solid #e5e7eb;max-width:96ch;margin:0 auto .5rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.5}.klachtenformulier__section{flex-direction:column;gap:.75rem;display:flex}.klachtenformulier__section-title{color:var(--color-text);margin:0 0 .25rem;font-size:1.125rem;font-weight:600}.klachtenformulier__section-intro{color:#6b7280;margin:0 0 .5rem;font-size:.875rem;line-height:1.5}.klachtenformulier__section-intro p{margin:0 0 .5rem}.klachtenformulier__section-intro p:last-child{margin-bottom:0}.klachtenformulier__bijlagen-lijst{margin:0 0 .5rem;padding-left:1.5rem;list-style-type:disc}.klachtenformulier__bijlagen-lijst li{margin:0;padding:0}.klachtenformulier__field{flex-direction:column;gap:.5rem;display:flex}.klachtenformulier__label{color:var(--color-text);font-size:.9375rem;font-weight:500}.klachtenformulier__input,.klachtenformulier__textarea{border-radius:var(--radius-sm);background:var(--color-secondary);transition:border-color var(--transition);border:1px solid #d1d5db;padding:.75rem 1rem;font-family:inherit;font-size:.9375rem}.klachtenformulier__input:focus,.klachtenformulier__textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .2);outline:none}.klachtenformulier__input--error{border-color:#dc2626}.klachtenformulier__input--error:focus{border-color:#dc2626;box-shadow:0 0 0 2px #dc262633}.klachtenformulier__error{color:#dc2626;margin-top:.25rem;font-size:.8125rem}.klachtenformulier__hint{color:#6b7280;margin:.25rem 0 0;font-size:.8125rem}.klachtenformulier__toggle-link{text-align:left;color:#2563eb;cursor:pointer;background:0 0;border:none;margin:.5rem 0 0;padding:0;font-size:.8125rem;text-decoration:underline;display:block}.klachtenformulier__toggle-link:hover,.klachtenformulier__toggle-link:focus-visible{color:#1d4ed8}.klachtenformulier__upload-box{border-radius:var(--radius-sm);transition:border-color var(--transition), background-color var(--transition);background:#f9fafb;border:1px dashed #9ca3af;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.klachtenformulier__upload-box--active{border-color:var(--color-primary);background:#eef6f1}.klachtenformulier__upload-input{display:none}.klachtenformulier__upload-empty-state{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.klachtenformulier__upload-icon{font-size:1.25rem;line-height:1}.klachtenformulier__upload-text{color:var(--color-text);margin:0;font-size:.875rem}.klachtenformulier__upload-btn{color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition), color var(--transition), background-color var(--transition);background:#fff;border:1px solid #d1d5db;padding:.55rem 1rem;font-family:inherit;font-size:.875rem;font-weight:400}.klachtenformulier__upload-btn:hover{border-color:var(--color-primary);background:#f4faf7}.klachtenformulier__upload-pill-list{flex-wrap:wrap;gap:.5rem;display:flex}.klachtenformulier__upload-pill{background:#fff;border:1px solid #d1d5db;border-radius:999px;align-items:center;gap:.25rem;max-width:100%;padding:.35rem .5rem .35rem .75rem;display:inline-flex}.klachtenformulier__upload-pill-name{text-overflow:ellipsis;white-space:nowrap;color:#374151;max-width:260px;font-size:.8125rem;overflow:hidden}.klachtenformulier__upload-pill-remove{color:#6b7280;cursor:pointer;opacity:0;width:1.35rem;height:1.35rem;transition:opacity var(--transition), background-color var(--transition), color var(--transition);background:0 0;border:none;border-radius:50%;padding:0;font-size:1rem;line-height:1}.klachtenformulier__upload-pill:hover .klachtenformulier__upload-pill-remove,.klachtenformulier__upload-pill:focus-within .klachtenformulier__upload-pill-remove,.klachtenformulier__upload-pill-remove:focus-visible{opacity:1}.klachtenformulier__upload-pill-remove:hover,.klachtenformulier__upload-pill-remove:focus-visible{color:#111827;background:#f3f4f6;outline:none}@media (hover:none){.klachtenformulier__upload-pill-remove{opacity:1}}.klachtenformulier__textarea{resize:vertical;min-height:120px;max-height:50vh}.klachtenformulier__textarea--editable{background:var(--color-secondary);min-height:120px}.klachtenformulier__prefilled{border-radius:var(--radius-sm);color:var(--color-text);white-space:pre-wrap;min-height:2.5rem;padding:.75rem 1rem;font-size:.9375rem}.klachtenformulier__prefilled--readonly{background:#f3f4f6;border:1px solid #e5e7eb;min-height:120px}.klachtenformulier__btn{color:var(--color-secondary);background-color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), transform .15s;align-self:flex-start;padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.klachtenformulier__btn:hover{background-color:var(--color-primary);border-color:var(--color-primary)}.klachtenformulier__btn:active{transform:scale(.98)}.klachtenformulier__btn--primary{color:var(--color-secondary);background-color:var(--color-primary);border:1px solid var(--color-primary);padding:.75rem 1.25rem;font-size:.95rem;font-weight:400}.klachtenformulier__btn--primary:hover{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-secondary)}.next-view__form-page{background:var(--color-secondary-alt);flex-direction:column;gap:1.5rem;width:100%;max-width:none;margin:0;padding:1.5rem;font-family:inherit;display:flex}.next-view__form-page .klachtenformulier__btn--primary{align-self:center}.next-view-inline{text-align:center;padding:1.5rem 0}.next-view-inline .klachtenformulier__disclaimer{margin-bottom:1.25rem}.next-view-inline .modal{text-align:left}.klachtenformulier-modal-body{font-family:inherit;overflow:visible}.klachtenformulier__intro-card{border-radius:var(--radius-sm);background:#f9fafb;border:1px solid #e5e7eb;margin:0 0 1rem;overflow:hidden}.klachtenformulier__intro-line{color:#6b7280;margin:0;padding:.75rem 1rem;font-size:.875rem;font-weight:400;line-height:1.5}.klachtenformulier__intro-line+.klachtenformulier__intro-line{border-top:1px solid #e5e7eb}.klachtenformulier__actions{margin-top:.15rem;padding-top:.25rem}.klachtenformulier__submit{color:var(--color-secondary);background-color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition), border-color var(--transition), transform var(--transition);padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.klachtenformulier__submit:hover{background-color:var(--color-primary)}.klachtenformulier__submit:active{transform:scale(.98)}.klachtenformulier__submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.klachtenformulier__submit:disabled:hover{background-color:var(--color-primary)}.klachtenformulier__missing-fields{color:#6b7280;margin-top:.5rem;font-size:.8125rem}.klachtenformulier__missing-fields--error{color:#dc2626}.klachtenformulier__field-row{gap:1rem;display:flex}.klachtenformulier__field-row>.klachtenformulier__field{flex:1;min-width:0}@media (width<=480px){.klachtenformulier__field-row{flex-direction:column}}.klachtenformulier__feedback-emojis{gap:.5rem;display:flex}.klachtenformulier__feedback-emoji{border-radius:var(--radius-sm);background:var(--color-secondary);cursor:pointer;transition:border-color var(--transition), transform .1s ease;border:2px solid #e5e7eb;padding:.375rem .5rem;font-size:1.25rem;line-height:1}.klachtenformulier__feedback-emoji:hover{border-color:#9ca3af;transform:scale(1.1)}.klachtenformulier__feedback-emoji--selected{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb), .08)}.adres-autocomplete{position:relative}.adres-autocomplete .klachtenformulier__input{width:100%}.adres-autocomplete__loading{border:2px solid #e5e7eb;border-top-color:var(--color-primary);border-radius:50%;width:1rem;height:1rem;animation:.6s linear infinite adres-spin;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}@keyframes adres-spin{to{transform:translateY(-50%)rotate(360deg)}}.adres-autocomplete__list{z-index:50;background:var(--color-secondary);border-radius:var(--radius-sm);border:1px solid #d1d5db;max-height:14rem;margin:.25rem 0 0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.adres-autocomplete__item{cursor:pointer;padding:.625rem .75rem;font-size:.875rem;line-height:1.4}.adres-autocomplete__item b{font-weight:600}.adres-autocomplete__item--active,.adres-autocomplete__item:hover{background:rgba(var(--color-primary-rgb), .08)}.adres-autocomplete__details{color:#6b7280;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:.25rem;font-size:.8125rem;display:flex}.adres-autocomplete__detail-item{gap:.25rem;display:flex}.adres-autocomplete__detail-label{color:var(--color-text);font-weight:500}.form-progress-footer{background:var(--color-secondary);border-top:1px solid rgba(var(--color-primary-rgb), .12);flex-direction:column;gap:1rem;padding:1rem 1.5rem;display:flex}.form-progress-footer__line{justify-content:center;align-items:center;gap:0;display:flex}.form-progress-footer__segment{align-items:center;display:flex}.form-progress-footer__circle{color:#9ca3af;background:#f5f5f5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;font-weight:600;display:flex;box-shadow:0 1px 3px #00000014}.form-progress-footer__circle--filled{background:var(--color-primary);color:var(--color-secondary)}.form-progress-footer__connector{background:#e5e7eb;flex-shrink:0;width:1.5rem;height:2px}.form-progress-footer__submit{color:var(--color-secondary);background-color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition), transform var(--transition);border:none;align-self:center;padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.form-progress-footer__submit:hover{background-color:var(--color-primary)}.form-progress-footer__submit:active{transform:scale(.98)}.form-modal-overlay{z-index:10000;background:#0006;justify-content:center;align-items:center;padding:1rem;animation:.22s ease-out modal-backdrop-fade-in;display:flex;position:fixed;inset:0}.form-modal{background:var(--color-secondary);border-radius:var(--radius-md);text-align:left;width:90%;max-width:32rem;padding:0;font-family:inherit;animation:.26s cubic-bezier(.22,1,.36,1) modal-slide-in;overflow:hidden;box-shadow:0 10px 40px #0000001f}.form-modal__header{background-color:var(--color-primary);flex-shrink:0;padding:1rem 1.5rem}.form-modal__title{color:var(--color-secondary);margin:0;font-family:inherit;font-size:1.125rem;font-weight:600}.form-modal__body{padding:1.5rem}.form-modal__text{color:#4b5563;margin:0 0 1.25rem;font-size:.9375rem;line-height:1.5}.form-modal__text a{color:var(--color-primary);text-decoration:underline}.form-modal__text a:hover{color:var(--color-primary-dark,#1a4d2e)}.form-modal__inline-tel{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.form-modal__inline-tel:hover{color:var(--color-primary-dark,#1a4d2e)}.loket-phone-modal__body{white-space:pre-line;color:#374151;font-size:.9375rem;line-height:1.55}.loket-phone-modal__loading{color:#6b7280;margin:0;font-size:.9375rem}.message-bubble__tel-link{color:var(--color-primary);text-underline-offset:2px;cursor:pointer;font:inherit;text-align:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.message-bubble__tel-link:hover{text-decoration-thickness:2px}.form-modal__close{color:var(--color-secondary);background-color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition);border:none;padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.form-modal__close:hover{background-color:var(--color-primary)}.form-modal__actions{justify-content:center;display:flex}.normaal-keuze__optie{border-radius:var(--radius-sm);background:#f9fafb;border:1px solid #e5e7eb;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.normaal-keuze__optie-titel{color:var(--color-text);margin:0;font-size:1rem;font-weight:400}.normaal-keuze__optie-uitleg{font-size:.875rem;margin:0 0 .25rem!important}.message-list{flex-direction:column;gap:1.25rem;display:flex}.message-bubble{align-self:flex-start;gap:.75rem;max-width:90%;display:flex}.message-bubble--user{flex-direction:row-reverse;align-self:flex-end}.message-bubble--user .message-bubble__body{background-color:var(--color-primary);border:1px solid var(--color-primary);color:var(--color-secondary)}.message-bubble--user .message-bubble__content a{color:var(--color-secondary);text-decoration:underline}.message-bubble__body{border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition);flex:1;padding:1rem 1.25rem}.message-bubble--assistant .message-bubble__body{border:1px solid rgba(var(--color-primary-rgb), .1);background-color:#fff}.message-bubble--assistant .message-bubble__body:hover{box-shadow:var(--shadow-md)}.message-bubble--choice{align-self:flex-end}.message-bubble--choice .message-bubble__body{border:1px solid rgba(var(--color-primary-rgb), .15);background-color:#fff}.message-bubble--choice .choice-buttons{align-items:flex-end}.typing-indicator{justify-content:center;align-items:center;gap:.35rem;display:flex}.message-bubble--typing .message-bubble__body{flex-direction:column;align-items:center;gap:.5rem;min-width:60px;min-height:44px;padding:.875rem 1.25rem;display:flex}.typing-indicator__message{color:var(--color-text-muted);font-size:.9375rem}.typing-indicator__dot{background-color:var(--color-text-muted);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both typing-bounce}.typing-indicator__dot:first-child{animation-delay:0s}.typing-indicator__dot:nth-child(2){animation-delay:.2s}.typing-indicator__dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-6px)}}.message-bubble__content{line-height:1.6}.message-bubble__content p{margin:0 0 .5rem}.message-bubble__content p:last-child{margin-bottom:0}.message-bubble--welcome .message-bubble__content{line-height:1.45}.message-bubble--welcome .message-bubble__content p{margin:0 0 .35rem}.message-bubble--welcome .message-bubble__content ul{margin:0 0 .35rem;padding-left:1.25rem}.message-bubble--welcome .message-bubble__content li{margin:0}.message-bubble--welcome .message-bubble__content li+li{margin-top:.1rem}.message-bubble__content a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.message-bubble__source-ref{color:#4b5563;vertical-align:baseline;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:.25rem;align-items:center;gap:.25rem;margin:0 .125rem;padding:.125rem .5rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.8125rem;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.message-bubble__source-ref:hover{color:#374151;background-color:#e5e7eb;border-color:#d1d5db;text-decoration:none}.message-bubble__source-icon{opacity:.7;flex-shrink:0;width:.875rem;height:.875rem}.message-bubble__action-link{cursor:pointer;font:inherit;color:var(--color-primary);text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.message-bubble__action-link:hover{color:var(--color-primary);text-decoration-thickness:2px}.message-bubble__actions{margin-top:1rem}.message-actions{border-top:1px solid rgba(var(--color-primary-rgb), .08);align-items:center;gap:.25rem;margin-top:.75rem;padding-top:.5rem;display:flex}.message-actions__btn{border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:color var(--transition), background-color var(--transition);background:0 0;border:none;padding:.35rem;font-size:1rem;font-weight:400;display:block}.message-actions__btn:hover{color:var(--color-text);background-color:rgba(var(--color-primary-rgb), .08)}.message-actions__btn--active{color:var(--color-primary)}.message-actions__btn--thumb{padding:.25rem}.message-actions__btn--thumb .message-actions__thumb{display:block}.message-actions__btn--thumb.message-actions__btn--active .message-actions__thumb{stroke:var(--color-primary)}.message-actions__btn--thumb-up-selected{color:#2e7d32;background-color:#2e7d321f;border:1px solid #2e7d3273}.message-actions__btn--thumb-up-selected .message-actions__thumb{stroke:#2e7d32}.message-actions__btn--thumb-down-selected{color:#c62828;background-color:#c628281f;border:1px solid #c6282873}.message-actions__btn--thumb-down-selected .message-actions__thumb{stroke:#c62828}.message-actions__btn--thumb:disabled{cursor:not-allowed}.message-actions__btn--undo{white-space:nowrap;color:var(--color-primary);background-color:rgba(var(--color-primary-rgb), .09);border:1px solid rgba(var(--color-primary-rgb), .42);box-shadow:var(--shadow-sm);align-items:center;gap:.4rem;margin-left:auto;padding:.45rem .85rem;font-size:.8125rem;font-weight:400;display:inline-flex}.message-actions__btn--undo:hover:not(:disabled){color:var(--color-text);background-color:var(--color-secondary);border-color:var(--color-primary);box-shadow:var(--shadow-md)}.message-actions__btn--undo:disabled{opacity:.55;cursor:not-allowed}.message-actions__undo-icon{stroke:currentColor;flex-shrink:0}.message-actions__icon{line-height:1;display:block}.feedback-modal__backdrop{z-index:1000;background-color:#0006;justify-content:center;align-items:center;padding:1rem;animation:.22s ease-out modal-backdrop-fade-in;display:flex;position:fixed;inset:0}.feedback-modal{background-color:var(--color-secondary);border-radius:var(--radius-lg);width:100%;max-width:420px;padding:0;font-family:inherit;animation:.26s cubic-bezier(.22,1,.36,1) modal-slide-in;overflow:hidden;box-shadow:0 10px 40px #0000001f}.feedback-modal__header{background-color:var(--color-primary);flex-shrink:0;padding:1rem 1.5rem}.feedback-modal__title{color:var(--color-secondary);margin:0;font-family:inherit;font-size:1.125rem;font-weight:600}.feedback-modal__body{padding:1.5rem}.feedback-modal__hint{color:var(--color-text-muted);margin:0 0 1rem;font-size:.9rem}.feedback-modal__input{border:1px solid rgba(var(--color-primary-rgb), .3);border-radius:var(--radius-sm);resize:none;width:100%;min-height:80px;margin-bottom:1rem;padding:.75rem 1rem;font-family:inherit;font-size:1rem}.feedback-modal__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .15);outline:none}.feedback-modal__input::placeholder{color:var(--color-text-muted)}.feedback-modal__actions{justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.feedback-modal__btn{border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition);padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.feedback-modal__btn:disabled{opacity:.6;cursor:not-allowed}.feedback-modal__btn--secondary{border:1px solid rgba(var(--color-primary-rgb), .3);color:var(--color-text);background:0 0}.feedback-modal__btn--secondary:hover:not(:disabled){background-color:rgba(var(--color-primary-rgb), .06)}.feedback-modal__btn--primary{background-color:var(--color-primary);color:var(--color-secondary);border:none}.feedback-modal__btn--primary:hover:not(:disabled){opacity:.95}@keyframes modal-backdrop-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-backdrop-fade-out{0%{opacity:1}to{opacity:0}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modal-slide-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.98)}}.choice-buttons{flex-direction:column;align-items:flex-end;gap:.5rem;width:100%;display:flex}.choice-buttons__btn{text-align:left;background-color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);width:100%;max-width:560px;color:var(--color-secondary);cursor:pointer;transition:background-color var(--transition), color var(--transition), border-color var(--transition), transform .15s;padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.choice-buttons__btn:hover:not(:disabled){background-color:var(--color-secondary);color:var(--color-text);border-color:var(--color-primary)}.choice-buttons__btn:active:not(:disabled){transform:scale(.99)}.choice-buttons__btn:disabled{opacity:.6;cursor:not-allowed}.action-buttons{flex-direction:column;gap:.5rem;display:flex}.action-button{text-align:left;background-color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);width:100%;max-width:560px;color:var(--color-secondary);cursor:pointer;transition:background-color var(--transition), color var(--transition), border-color var(--transition), transform .15s;padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.action-button:hover:not(:disabled){background-color:var(--color-secondary);color:var(--color-text);border-color:var(--color-primary)}.action-button:active:not(:disabled){transform:scale(.99)}.action-button:disabled{opacity:.6;cursor:not-allowed}.chat-input{flex-direction:column;gap:0;display:flex}.chat-input__label{color:#343a40;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;font-weight:700;display:block}.chat-input__wrapper{align-items:center;gap:.75rem;display:flex}.chat-input__field{resize:none;min-height:56px;transition:border-color var(--transition), background-color var(--transition);background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:.5rem;flex:1;padding:.75rem 1rem;font-family:inherit;font-size:1rem}.chat-input__field:focus{border-color:var(--color-primary);background-color:var(--color-secondary);outline:none}.chat-input__field::placeholder{color:#9ca3af}.chat-input__field:disabled{cursor:not-allowed;color:#6b7280;background-color:#f3f4f6}.chat-input__send{background-color:var(--color-primary);width:48px;height:48px;color:var(--color-secondary);cursor:pointer;transition:background-color var(--transition), transform .15s, opacity var(--transition);border:none;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-weight:400;display:flex}.chat-input__send:hover:not(:disabled){background-color:var(--color-primary)}.chat-input__send:active:not(:disabled){transform:scale(.95)}.chat-input__send:disabled{opacity:.5;cursor:not-allowed}.chat-input__send-icon{width:22px;height:22px}.placeholder-module{background-color:var(--color-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid rgba(var(--color-primary-rgb), .1);padding:1.5rem}.placeholder-module h2{color:var(--color-primary);margin-top:0;font-weight:600}.placeholder-module ul{color:var(--color-text-muted)}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.login-card{background-color:var(--color-secondary);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-lg);border:1px solid rgba(var(--color-primary-rgb), .12);padding:2rem}.login-title{color:var(--color-primary);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.login-subtitle{color:var(--color-text-muted);margin:0 0 1.5rem;font-size:.95rem}.login-form{flex-direction:column;gap:1rem;display:flex}.login-label{color:var(--color-text);font-size:.9rem;font-weight:500}.login-input{border:1px solid rgba(var(--color-primary-rgb), .3);border-radius:var(--radius-sm);padding:.75rem 1rem;font-family:inherit;font-size:1rem}.login-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .15);outline:none}.login-error{color:#b91c1c;border-radius:var(--radius-sm);background-color:#fef2f2;padding:.75rem;font-size:.9rem}.login-submit{background-color:var(--color-primary);color:var(--color-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition);border:none;padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:400}.login-submit:hover:not(:disabled){opacity:.95}.login-submit:disabled{opacity:.6;cursor:not-allowed}.app--loading .loading-spinner{min-height:100vh;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:1rem;display:flex}.klacht-indienen-demo{max-width:720px;margin:0 auto;padding:1.5rem}.klacht-indienen-demo__back{color:var(--color-primary);margin-bottom:1rem;font-size:.875rem;text-decoration:underline;display:inline-block}.klacht-indienen-demo__back:hover{text-decoration-thickness:2px}.klacht-indienen-demo__title{color:var(--color-text);margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.klacht-indienen-demo__intro{color:var(--color-text-muted);margin:0 0 2rem;font-size:.9375rem;line-height:1.5}.klacht-indienen-demo__intro code{background-color:#e5e7eb;border-radius:.25rem;padding:.125rem .375rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.875em}.klacht-indienen-demo__group{margin-bottom:2.5rem}.klacht-indienen-demo__group-title{color:var(--color-text);border-bottom:1px solid rgba(var(--color-primary-rgb), .2);margin:0 0 1rem;padding-bottom:.25rem;font-size:1.0625rem;font-weight:700}.klacht-indienen-demo__scenario{margin-bottom:1.5rem}.klacht-indienen-demo__scenario:last-child{margin-bottom:0}.klacht-indienen-demo__scenario-title{color:var(--color-text-muted);margin:0 0 .5rem;font-size:.875rem;font-weight:600}.klacht-indienen-demo__chat{background-color:var(--color-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid rgba(var(--color-primary-rgb), .1);padding:1.25rem}
