:root{--primary-blue:#2563eb;--primary-blue-hover:#1d4ed8;--secondary-green:#059669;--secondary-green-hover:#047857;--accent-red:#dc2626;--text-gray:#64748b;--text-dark:#1e293b;--background-light:#f8fafc;--background-white:#fff;--border-light:#e2e8f0;--border-medium:#cbd5e1;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--font-scale:1;--font-size-xs:calc(0.75rem * var(--font-scale));--font-size-sm:calc(0.875rem * var(--font-scale));--font-size-base:calc(1rem * var(--font-scale));--font-size-lg:calc(1.125rem * var(--font-scale));--font-size-xl:calc(1.25rem * var(--font-scale));--font-size-2xl:calc(1.5rem * var(--font-scale));--font-size-3xl:calc(1.875rem * var(--font-scale));--font-size-4xl:calc(2.25rem * var(--font-scale));--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.625}*{box-sizing:border-box;padding:0;margin:0;font-family:Inter,IBM Plex Sans,Open Sans,system-ui,sans-serif}body{background-color:var(--background-light);color:var(--text-dark);line-height:var(--line-height-normal)}.preface{background:var(--background-white);border:1px solid var(--border-light);display:block;width:90vw;max-width:800px;position:relative;margin:10vh auto;padding:3rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.preface h1{text-align:center;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-dark);margin-bottom:1.5rem;line-height:var(--line-height-tight)}.start-button{display:block;margin:2rem auto 0}.preface p{margin-top:1.25rem;font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--text-gray)}.preface p:first-of-type{font-size:var(--font-size-xl);color:var(--text-dark);font-weight:var(--font-weight-medium)}.preface .disclaimer{font-size:var(--font-size-sm);color:var(--text-gray);font-style:italic;margin-top:2rem;padding:1rem;background:var(--background-light);border-radius:var(--radius-md);border-left:4px solid var(--primary-blue)}.dynamic-form{padding:2rem 1rem;min-height:100vh;background:var(--background-light)}.dynamic-form-field label{cursor:pointer}.font-scale-controls{display:flex;flex-direction:column;gap:.5rem;margin:0 auto 1.5rem;padding:1rem 1.25rem;background:var(--background-white);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);max-width:800px}.font-scale-controls label{font-weight:var(--font-weight-medium);font-size:var(--font-size-base);color:var(--text-dark);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.font-scale-range{width:100%;accent-color:var(--primary-blue)}.font-scale-value{font-size:var(--font-size-sm);color:var(--text-gray)}.font-scale-controls-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.font-scale-reset{border:1px solid var(--border-medium);background:var(--background-white);color:var(--text-gray);padding:.4rem .75rem;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:background-color .2s ease-in-out,color .2s ease-in-out}.font-scale-reset:focus,.font-scale-reset:hover{background:var(--primary-blue);color:var(--background-white);outline:none}.dynamic-form-dropdown-question{display:flex;flex-direction:column;align-items:stretch}.dynamic-form-dropdown-question .dynamic-form-field-question-description,.dynamic-form-dropdown-question .dynamic-form-field-question-title{max-width:100%}.dynamic-form-dropdown-question .dynamic-form-dropdown-question-options-wrapper{position:relative;display:block;width:100%;max-width:100%;box-sizing:border-box;margin-top:.75rem}.dynamic-form-dropdown-question .dynamic-form-combobox{position:relative;width:100%;max-width:100%}.dynamic-form-dropdown-question .dynamic-form-combobox input{width:100%;border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:1rem 2.75rem 1rem 1.25rem;background:var(--background-white);color:var(--text-dark);font-weight:var(--font-weight-medium);transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;box-shadow:var(--shadow-sm)}.dynamic-form-dropdown-question .dynamic-form-combobox input:focus{outline:none;border-color:var(--primary-blue);box-shadow:var(--shadow-md)}.dynamic-form-dropdown-question .dynamic-form-combobox button{position:absolute;top:50%;right:.75rem;transform:translateY(-50%);border:none;background:transparent;color:var(--text-gray);cursor:pointer;padding:.25rem;font-size:var(--font-size-lg)}.dynamic-form-dropdown-question .dynamic-form-combobox button:focus{outline:2px solid var(--primary-blue);outline-offset:2px}.dynamic-form-field-question-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:1rem;color:var(--text-dark);line-height:var(--line-height-tight)}.dynamic-form-field-question-description{font-size:var(--font-size-base);color:var(--text-gray);margin-bottom:1.5rem;line-height:var(--line-height-relaxed)}.dynamic-form-select-field-options{position:absolute;top:100%;left:0;right:0;width:100%;max-height:200px;overflow-y:auto;background:var(--background-white);border:1px solid var(--border-light);box-shadow:var(--shadow-lg);z-index:98;list-style:none;padding:.5rem 0;border-radius:var(--radius-md);margin:.25rem 0 0}.dynamic-form-select-field-options li{padding:.75rem 1.25rem;margin:0;cursor:pointer;transition:all .2s ease-in-out;font-weight:var(--font-weight-medium)}.dynamic-form-select-field-options li:hover{color:var(--background-white);background-color:var(--primary-blue)}.dynamic-form-select-field-options li.dynamic-form-select-field-option-active{color:var(--background-white);background-color:var(--primary-blue);position:relative}.dynamic-form-select-field-option-highlight{background-color:var(--border-light)}.dynamic-form-select-field-options li:after{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:14px;height:10px;content:"✔️";display:none}.dynamic-form-select-field-options-empty{padding:.75rem 1.25rem;color:var(--text-gray);font-style:italic;cursor:default}.dynamic-form-radio-button-field{margin:.75rem 0;transition:all .2s ease-in-out}.dynamic-form-radio-button-field input{display:none}.dynamic-form-radio-button-field label{cursor:pointer;display:block;border:1px solid var(--border-medium);border-radius:var(--radius-md);width:100%;padding:1rem 1.25rem;background:var(--background-white);color:var(--text-dark);font-weight:var(--font-weight-medium);transition:all .2s ease-in-out;box-shadow:var(--shadow-sm)}.dynamic-form-radio-button-field label:hover{border-color:var(--primary-blue);box-shadow:var(--shadow-md);transform:translateY(-1px)}.dynamic-form-radio-button-field.dynamic-form-radio-button-field-checked label{color:var(--background-white);background-color:var(--primary-blue);border-color:var(--primary-blue);box-shadow:var(--shadow-md)}.dynamic-form-buttons{margin-top:20px;display:flex;flex-direction:row;justify-content:space-between}.dynamic-form-button{padding:.75rem 2rem;cursor:pointer;background-color:var(--background-white);border:1px solid var(--border-medium);border-radius:var(--radius-md);margin-bottom:.75rem;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-dark);transition:all .2s ease-in-out;box-shadow:var(--shadow-sm)}.dynamic-form-button:hover{background-color:var(--primary-blue);color:var(--background-white);border-color:var(--primary-blue);box-shadow:var(--shadow-md);transform:translateY(-1px)}.dynamic-form-button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.dynamic-form-button:disabled{cursor:not-allowed;opacity:.6;pointer-events:none;background-color:var(--background-white);color:var(--text-gray);border-color:var(--border-medium);transform:none;box-shadow:var(--shadow-sm)}.dynamic-form-button.arrow{padding:.75rem 1rem}.dynamic-form-button.active{background-color:var(--primary-blue);color:var(--background-white);border-color:var(--primary-blue)}.dynamic-form-output{background:var(--background-white);border:1px solid var(--border-light);display:block;width:100%;max-width:1000px;margin:2rem auto;border-radius:var(--radius-xl);padding:2.5rem;box-shadow:var(--shadow-lg)}.dynamic-form-output-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.dynamic-form-output-actions .dynamic-form-button{min-width:160px}.dynamic-form-output-message{font-size:var(--font-size-sm);margin-bottom:1rem;color:var(--text-gray)}.dynamic-form-output-message.error{color:var(--accent-red)}.dynamic-form-output .dynamic-form-output-item{margin:2rem 0;padding:1.5rem;background:var(--background-light);border-radius:var(--radius-md);border-left:4px solid var(--primary-blue)}.dynamic-form-output .dynamic-form-output-item p{margin-left:0;line-height:var(--line-height-relaxed);color:var(--text-gray)}.dynamic-form-output .dynamic-form-output-item p.dynamic-form-output-item-title{margin-left:0}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-title{font-size:var(--font-size-xl);margin-bottom:1rem;font-weight:var(--font-weight-semibold);color:var(--text-dark)}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content{color:var(--text-gray);line-height:var(--line-height-relaxed)}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content p{margin:0 0 1rem}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content ol,.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content ul{margin:0 0 1rem;padding-left:1.75rem;list-style-position:outside}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content ul{list-style-type:disc}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content ul ul{list-style-type:circle}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content ol{list-style-type:decimal}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content li{margin-bottom:.5rem;padding-left:0}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content li>p{display:inline;margin:0}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content a{color:var(--primary-blue);text-decoration:underline;word-break:break-word}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content ol ol,.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content ul ul{margin-top:.5rem;padding-left:1.5rem}.dynamic-form-output .dynamic-form-output-item .dynamic-form-output-item-content>:last-child{margin-bottom:0}.question-item-wrapper{background:var(--background-white);border:1px solid var(--border-light);display:block;width:100%;max-width:800px;margin:2rem auto;border-radius:var(--radius-xl);padding:2.5rem;box-shadow:var(--shadow-lg)}.question-item-logo{display:block;margin:0 auto 2rem;width:140px;height:auto;max-width:100%;object-fit:contain;border-radius:0}.email-form-wrapper{margin:2rem auto;display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap}.email-field{flex:1 1;max-width:300px;padding:.75rem 1rem;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color .2s ease-in-out;box-shadow:var(--shadow-sm)}.email-field:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px rgba(37,99,235,.1)}.dynamic-form-button.start-over-button{float:right;padding:.75rem 1.5rem;background-color:var(--background-white);color:var(--text-gray);border-color:var(--border-medium)}.dynamic-form-button.start-over-button:hover{background-color:var(--accent-red);color:var(--background-white);border-color:var(--accent-red)}.email-form-wrapper .dynamic-form-button{padding:6px}.hide-on-mobile{display:none}@media (min-width:768px){.hide-on-desktop{display:none}.hide-on-mobile{display:block}.preface{padding:4rem}.dynamic-form{padding:3rem 2rem}.dynamic-form-output,.question-item-wrapper{padding:3rem 4rem}.dynamic-form-dropdown-question .dynamic-form-dropdown-question-options-wrapper label{max-width:500px}.dynamic-form-button.arrow,.dynamic-form-button.start-over-button{padding:.75rem 2rem}.email-field{max-width:400px}.email-form-wrapper{flex-wrap:nowrap}}@media (max-width:600px){.font-scale-controls{padding:.75rem 1rem}.preface{padding:2.5rem 1.5rem}.dynamic-form-output,.question-item-wrapper{padding:1.75rem 1.25rem}.dynamic-form-output .dynamic-form-output-item{padding:1.25rem}.dynamic-form-output-actions{flex-direction:column;align-items:stretch}.dynamic-form-output-actions .dynamic-form-button{width:100%}}