.haifa-ai-app {direction:rtl;text-align:right;font-family:inherit;color:var(--hai-ink);max-width:880px;margin:32px auto;padding:0 16px;}
.haifa-ai-app *,.haifa-ai-app *::before,.haifa-ai-app *::after {box-sizing:border-box;}
.haifa-ai-form {background:var(--hai-surface);position:relative;}
.haifa-ai-form__intro {margin:0 0 22px;padding:18px 22px;background:linear-gradient(135deg,var(--hai-primary-50) 0%,var(--hai-accent-50) 100%);border:1px solid var(--hai-border);border-radius:var(--hai-radius);color:var(--hai-ink);font-size:15px;line-height:1.6;overflow:hidden;max-height:1200px;opacity:1;transition:max-height var(--hai-dur-slow) var(--hai-easing),opacity var(--hai-dur) var(--hai-easing),margin var(--hai-dur) var(--hai-easing),padding var(--hai-dur) var(--hai-easing),border-color var(--hai-dur) var(--hai-easing);}
.haifa-ai-form__intro.is-collapsed {max-height:0;opacity:0;margin:0;padding-top:0;padding-bottom:0;border-top-color:transparent;border-bottom-color:transparent;}
.haifa-ai-form__intro > *:first-child {margin-top:0;}
.haifa-ai-form__intro > *:last-child {margin-bottom:0;}
.haifa-ai-form__intro p {margin:0 0 12px;}
.haifa-ai-form__intro h2,.haifa-ai-form__intro h3,.haifa-ai-form__intro h4 {margin:0 0 10px;color:var(--hai-ink);line-height:1.3;}
.haifa-ai-form__intro h2 {font-size:20px;font-weight:700;}
.haifa-ai-form__intro h3 {font-size:17px;font-weight:700;}
.haifa-ai-form__intro h4 {font-size:15px;font-weight:600;}
.haifa-ai-form__intro a {color:var(--hai-primary);text-decoration:underline;}
.haifa-ai-form__intro a:hover {color:var(--hai-primary-600);}
.haifa-ai-form__intro ul,.haifa-ai-form__intro ol {margin:0 18px 12px 0;padding:0;}
.haifa-ai-form__intro li {margin:4px 0;}
.haifa-ai-form__intro blockquote {margin:0 0 12px;padding:8px 14px;border-inline-start:3px solid var(--hai-primary);background:var(--hai-surface);color:var(--hai-ink-muted);font-style:italic;}
.haifa-ai-form__head {margin:0 0 18px;}
.haifa-ai-form__title {margin:0 0 6px;font-size:28px;line-height:1.2;font-weight:700;color:var(--hai-ink);letter-spacing:-.01em;}
.haifa-ai-form__lead {margin:0;color:var(--hai-ink-muted);font-size:15px;line-height:1.55;}
.haifa-ai-progress {margin:18px 0 22px;}
.haifa-ai-progress__bar {appearance:none;-webkit-appearance:none;width:100%;height:6px;border-radius:999px;border:none;background:var(--hai-primary-50);overflow:hidden;display:block;}
.haifa-ai-progress__bar::-webkit-progress-bar {background:var(--hai-primary-50);border-radius:999px;}
.haifa-ai-progress__bar::-webkit-progress-value {background:linear-gradient(90deg,var(--hai-primary) 0%,var(--hai-accent) 100%);border-radius:999px;transition:inline-size var(--hai-dur-slow) var(--hai-easing);}
.haifa-ai-progress__bar::-moz-progress-bar {background:linear-gradient(90deg,var(--hai-primary) 0%,var(--hai-accent) 100%);border-radius:999px;}
.haifa-ai-progress__label {margin:8px 0 0;font-size:13px;color:var(--hai-ink-muted);font-weight:500;}
.haifa-ai-live {position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.haifa-ai-steps {position:relative;}
.haifa-ai-step {animation:haifaAiStepIn var(--hai-dur) var(--hai-easing);}
.haifa-ai-step[hidden] {display:none;}
.haifa-ai-step__head {margin:0 0 18px;border-bottom:1px solid var(--hai-border);padding-bottom:14px;}
.haifa-ai-step__eyebrow {margin:0 0 4px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--hai-primary);}
.haifa-ai-step__title {margin:0;font-size:22px;font-weight:700;color:var(--hai-ink);line-height:1.25;outline:none;}

.haifa-ai-step__body {display:grid;gap:18px;}
.haifa-ai-step__note {margin:14px 0 0;font-size:13px;color:var(--hai-ink-soft);}
.haifa-ai-summary {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:0;padding:18px;background:var(--hai-surface-2);border-radius:var(--hai-radius);border:1px solid var(--hai-border);}
.haifa-ai-summary div {display:flex;flex-direction:column;gap:2px;}
.haifa-ai-summary dt {margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--hai-ink-soft);}
.haifa-ai-summary dd {margin:0;font-size:15px;font-weight:500;color:var(--hai-ink);word-break:break-word;}
.haifa-ai-personal {display:grid;gap:14px;}
.haifa-ai-personal__row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.haifa-ai-personal__field {display:flex;flex-direction:column;gap:6px;min-width:0;}
.haifa-ai-personal__field--readonly .haifa-ai-input {background:var(--hai-surface-2);color:var(--hai-ink-muted);cursor:not-allowed;}
.haifa-ai-personal__label {font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--hai-ink-soft);}
.haifa-ai-personal__hint {margin:4px 0 0;font-size:12px;color:var(--hai-ink-soft);}
.haifa-ai-q {border:0;margin:0;padding:18px 20px;border-radius:var(--hai-radius);background:var(--hai-surface);border:1px solid var(--hai-border);transition:border-color var(--hai-dur) var(--hai-easing),box-shadow var(--hai-dur) var(--hai-easing);}
.haifa-ai-q.is-invalid {border-color:var(--hai-danger);box-shadow:0 0 0 3px var(--hai-danger-50);}
.haifa-ai-q__legend {display:flex;align-items:flex-start;gap:10px;width:100%;float:none;padding:0;margin:0 0 6px;font-weight:600;color:var(--hai-ink);font-size:16px;}
.haifa-ai-q__num {flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:var(--hai-primary-50);color:var(--hai-primary);font-size:12px;font-weight:700;letter-spacing:.02em;}
.haifa-ai-q__title {flex:1;line-height:1.4;}
.haifa-ai-q__required {margin-inline-start:6px;color:var(--hai-accent);font-weight:700;}
.haifa-ai-q__help {margin:0 0 12px;padding-inline-start:38px;font-size:13px;color:var(--hai-ink-soft);line-height:1.5;}
.haifa-ai-q__sr {position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.haifa-ai-q__error {margin:8px 0 0;padding:0;font-size:13px;color:var(--hai-danger);font-weight:500;min-height:0;}
.haifa-ai-q__error:empty {display:none;}
.haifa-ai-q__options {display:grid;gap:8px;margin:8px 0 0;padding-inline-start:38px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.haifa-ai-q__options--radio {grid-template-columns:repeat(2,minmax(0,1fr));}
.haifa-ai-q__options--checkbox {grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.haifa-ai-opt {position:relative;display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border:1px solid var(--hai-border);border-radius:var(--hai-radius-sm);background:var(--hai-surface);cursor:pointer;transition:border-color var(--hai-dur-fast) var(--hai-easing),background var(--hai-dur-fast) var(--hai-easing),transform var(--hai-dur-fast) var(--hai-easing);}
.haifa-ai-opt:hover {border-color:var(--hai-border-strong);background:var(--hai-surface-2);}
.haifa-ai-opt:has(.haifa-ai-opt__input:checked) {border-color:var(--hai-primary);background:var(--hai-primary-50);}
.haifa-ai-opt:has(.haifa-ai-opt__input:focus-visible) {box-shadow:var(--hai-focus);}
.haifa-ai-opt__input {position:absolute;opacity:0;pointer-events:none;}
.haifa-ai-opt__box {flex-shrink:0;width:18px;height:18px;border:2px solid var(--hai-border-strong);border-radius:4px;background:var(--hai-surface);position:relative;transition:border-color var(--hai-dur-fast) var(--hai-easing),background var(--hai-dur-fast) var(--hai-easing);margin-top:2px;}
.haifa-ai-q__options--radio .haifa-ai-opt__box {border-radius:999px;}
.haifa-ai-opt__input[type=checkbox]:checked + .haifa-ai-opt__box {border-color:var(--hai-primary);background:var(--hai-primary);}
.haifa-ai-opt__input[type=checkbox]:checked + .haifa-ai-opt__box::after {content:"";position:absolute;inset-inline-start:4px;inset-block-start:1px;width:4px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.haifa-ai-opt__input[type=radio]:checked + .haifa-ai-opt__box {border-color:var(--hai-primary);}
.haifa-ai-opt__input[type=radio]:checked + .haifa-ai-opt__box::after {content:"";position:absolute;inset:3px;border-radius:999px;background:var(--hai-primary);}
.haifa-ai-opt__label {flex:1;font-size:14px;line-height:1.45;color:var(--hai-ink);}
.haifa-ai-q__other {margin:10px 0 0;padding-inline-start:38px;animation:haifaAiSlide var(--hai-dur) var(--hai-easing);}
.haifa-ai-q__other[hidden] {display:none;}
.haifa-ai-input,.haifa-ai-textarea {width:100%;padding:11px 14px;border:1px solid var(--hai-border-strong);border-radius:var(--hai-radius-sm);background:var(--hai-surface);font-family:inherit;font-size:14px;line-height:1.5;color:var(--hai-ink);transition:border-color var(--hai-dur-fast) var(--hai-easing),box-shadow var(--hai-dur-fast) var(--hai-easing);}
.haifa-ai-textarea {resize:vertical;min-height:96px;}
.haifa-ai-input:focus-visible,.haifa-ai-textarea:focus-visible {outline:none;border-color:var(--hai-primary);box-shadow:var(--hai-focus);}
.haifa-ai-scale {margin:8px 0 0;padding-inline-start:38px;}
.haifa-ai-scale__pills {display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin:0;}
.haifa-ai-scale__pill {position:relative;display:flex;align-items:center;justify-content:center;height:44px;border:1px solid var(--hai-border);border-radius:var(--hai-radius-sm);background:var(--hai-surface);cursor:pointer;font-weight:600;color:var(--hai-ink-muted);transition:border-color var(--hai-dur-fast) var(--hai-easing),background var(--hai-dur-fast) var(--hai-easing),color var(--hai-dur-fast) var(--hai-easing),transform var(--hai-dur-fast) var(--hai-easing);}
.haifa-ai-scale__pill:hover {border-color:var(--hai-border-strong);background:var(--hai-surface-2);}
.haifa-ai-scale__pill:has(.haifa-ai-scale__input:checked) {border-color:var(--hai-primary);background:var(--hai-primary);color:#fff;transform:translateY(-1px);}
.haifa-ai-scale__pill:has(.haifa-ai-scale__input:focus-visible) {box-shadow:var(--hai-focus);}
.haifa-ai-scale__input {position:absolute;opacity:0;pointer-events:none;}
.haifa-ai-scale__num {font-size:14px;}
.haifa-ai-scale__legend {display:flex;justify-content:space-between;margin:8px 0 0;font-size:12px;color:var(--hai-ink-soft);}
.haifa-ai-form__error {margin:14px 0 0;padding:12px 16px;border-radius:var(--hai-radius-sm);background:var(--hai-danger-50);border:1px solid var(--hai-danger);color:var(--hai-danger);font-size:14px;font-weight:500;}
.haifa-ai-form__error[hidden] {display:none;}
.haifa-ai-form__foot {display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 0;padding-top:18px;border-top:1px solid var(--hai-border);}
.haifa-ai-btn {display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;font-size:15px;font-weight:600;line-height:1;border-radius:var(--hai-radius-sm);border:1px solid transparent;background:transparent;cursor:pointer;text-decoration:none;font-family:inherit;transition:background var(--hai-dur-fast) var(--hai-easing),border-color var(--hai-dur-fast) var(--hai-easing),color var(--hai-dur-fast) var(--hai-easing),transform var(--hai-dur-fast) var(--hai-easing),box-shadow var(--hai-dur-fast) var(--hai-easing);}
.haifa-ai-btn:focus-visible {outline:none;box-shadow:var(--hai-focus);}
.haifa-ai-btn--primary {background:var(--hai-primary);color:#fff !important;border-color:var(--hai-primary);}
.haifa-ai-btn--primary:hover {background:var(--hai-primary-600);border-color:var(--hai-primary-600);transform:translateY(-1px);}
.haifa-ai-btn--ghost {background:transparent;color:var(--hai-ink);border-color:var(--hai-border-strong);}
.haifa-ai-btn--ghost:hover {background:var(--hai-surface-2);border-color:var(--hai-ink-muted);}
.haifa-ai-btn--submit {min-width:220px;}
.haifa-ai-btn[hidden] {display:none;}
.haifa-ai-btn[disabled] {opacity:.6;cursor:not-allowed;transform:none;}
.haifa-ai-btn__spinner {display:none;width:16px;height:16px;border-radius:999px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:haifaAiSpin .9s linear infinite;}
.haifa-ai-btn.is-loading .haifa-ai-btn__spinner {display:inline-block;}
.haifa-ai-btn.is-loading .haifa-ai-btn__label {opacity:.85;}
.haifa-ai-notice {padding:18px 22px;border-radius:var(--hai-radius);background:var(--hai-surface);border:1px solid var(--hai-border);box-shadow:var(--hai-shadow-1);}
.haifa-ai-notice--success {background:var(--hai-success-50);border-color:var(--hai-success);}
.haifa-ai-notice--info {background:var(--hai-primary-50);border-color:var(--hai-primary);text-align:center;}
.haifa-ai-notice--throttle {background:#fef3ec;border-color:var(--hai-accent);text-align:center;margin:0 0 18px;}
.haifa-ai-notice--throttle .haifa-ai-notice__title {margin:0 0 6px;font-size:17px;line-height:1.4;color:var(--hai-ink);}
.haifa-ai-notice--throttle .haifa-ai-notice__hint {margin:0;font-size:14px;color:var(--hai-ink-muted);}
.haifa-ai-notice p {margin:0 0 10px;}
.haifa-ai-notice p:last-child {margin-bottom:0;}
.haifa-ai-result {animation:haifaAiResultIn var(--hai-dur-slow) var(--hai-easing);outline:none;}
.haifa-ai-result__header {text-align:center;margin:0 0 18px;}
.haifa-ai-result__eyebrow {margin:0 0 4px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--hai-primary);}
.haifa-ai-result__title {margin:0;font-size:26px;font-weight:700;color:var(--hai-ink);line-height:1.25;}
.haifa-ai-result__card {position:relative;background:linear-gradient(135deg,var(--hai-primary-50) 0%,var(--hai-accent-50) 100%);border:1px solid var(--hai-border);border-radius:var(--hai-radius-lg);padding:36px 32px;text-align:center;box-shadow:var(--hai-shadow-2);overflow:hidden;}
.haifa-ai-result__card::before {content:"";position:absolute;inset:auto -40px -120px auto;width:280px;height:280px;border-radius:999px;background:radial-gradient(circle at center,rgba(255,255,255,.55),transparent 70%);pointer-events:none;}
.haifa-ai-result__score {position:relative;display:inline-flex;align-items:baseline;gap:4px;font-weight:800;color:var(--hai-primary);letter-spacing:-.02em;}
.haifa-ai-result__score-num {font-size:88px;line-height:1;font-variant-numeric:tabular-nums;}
.haifa-ai-result__score-max {font-size:24px;color:var(--hai-ink-muted);font-weight:600;}
.haifa-ai-result__pill {display:inline-block;margin:14px 0 0;padding:9px 22px;background:var(--hai-surface);color:var(--hai-primary);border:1px solid var(--hai-primary-100);border-radius:999px;font-weight:600;font-size:15px;}
.haifa-ai-result__sentence {margin:18px auto 0;max-width:560px;font-size:16px;line-height:1.6;color:var(--hai-ink);}
.haifa-ai-result__actions {position:relative;display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:22px 0 0;}
.haifa-ai-result__breakdown {position:relative;margin:24px auto 0;max-width:520px;text-align:right;background:var(--hai-surface);border:1px solid var(--hai-border);border-radius:var(--hai-radius);padding:14px 18px;}
.haifa-ai-result__breakdown summary {cursor:pointer;font-weight:600;color:var(--hai-ink);font-size:14px;list-style:none;display:flex;justify-content:space-between;align-items:center;}
.haifa-ai-result__breakdown summary::after {content:"+";font-weight:300;font-size:20px;color:var(--hai-ink-muted);transition:transform var(--hai-dur-fast) var(--hai-easing);}
.haifa-ai-result__breakdown[open] summary::after {content:"−";}
.haifa-ai-result__breakdown-list {margin:14px 0 0;padding:0;list-style:none;display:grid;gap:10px;}
.haifa-ai-result__breakdown-list li {display:grid;grid-template-columns:1fr auto;column-gap:10px;row-gap:6px;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--hai-border);}
.haifa-ai-result__breakdown-list li:last-child {padding-bottom:0;border-bottom:none;}
.haifa-ai-result__breakdown-label {font-size:13px;color:var(--hai-ink-muted);}
.haifa-ai-result__breakdown-value {font-size:13px;font-weight:600;color:var(--hai-ink);font-variant-numeric:tabular-nums;}
.haifa-ai-result__breakdown-bar {grid-column:1 / -1;display:block;height:5px;background:var(--hai-primary-50);border-radius:999px;overflow:hidden;}
.haifa-ai-result__breakdown-bar span {display:block;height:100%;background:linear-gradient(90deg,var(--hai-primary) 0%,var(--hai-accent) 100%);border-radius:999px;transition:width var(--hai-dur-slow) var(--hai-easing);}
@media all and (max-width: 720px){
.haifa-ai-form {padding:15px;border-radius:var(--hai-radius);}
.haifa-ai-form__intro {padding:14px 16px;font-size:14px;}
.haifa-ai-form__title {font-size:22px;}
.haifa-ai-step__title {font-size:18px;}
.haifa-ai-summary {grid-template-columns:1fr;}
.haifa-ai-personal__row {grid-template-columns:1fr;}
.haifa-ai-q__options {padding-inline-start:0;grid-template-columns:1fr;}
.haifa-ai-q__options--radio {grid-template-columns:1fr;}
.haifa-ai-q__options--checkbox {grid-template-columns:1fr;}
.haifa-ai-q__help {padding-inline-start:0;}
.haifa-ai-scale {padding-inline-start:0;}
.haifa-ai-scale__pills {grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;}
.haifa-ai-form__foot {flex-direction:column-reverse;align-items:stretch;}
.haifa-ai-btn {width:100%;}
.haifa-ai-result__card {padding:24px 18px;}
.haifa-ai-result__score-num {font-size:64px;}
}
@media (prefers-reduced-motion: reduce){
.haifa-ai-step,.haifa-ai-result,.haifa-ai-q__other,.haifa-ai-result__breakdown-bar span,.haifa-ai-progress__bar::-webkit-progress-value,.haifa-ai-btn,.haifa-ai-opt,.haifa-ai-scale__pill,.haifa-ai-input,.haifa-ai-textarea,.haifa-ai-form__intro {animation:none !important;transition:none !important;}
}
@keyframes haifaAiStepIn {from {opacity:0;transform:translateX(12px);} to {opacity:1;transform:translateX(0);}}
@keyframes haifaAiResultIn {from {opacity:0;transform:translateY(8px) scale(.98);} to {opacity:1;transform:translateY(0) scale(1);}}
@keyframes haifaAiSlide {from {opacity:0;max-height:0;} to {opacity:1;max-height:120px;}}
@keyframes haifaAiSpin {from {transform:rotate(0deg);} to {transform:rotate(360deg);}}
