/* The original Zomfy card-choice conversation, refined for the local premium edition. */
.zf-dialog{width:min(1080px,calc(100vw - 48px));height:min(720px,calc(100dvh - 48px));max-width:none;max-height:none;margin:auto;padding:7px;border:1px solid #424b40;border-radius:22px;background:#192019;color:#20281e;overflow:hidden;box-shadow:0 35px 120px #0007}
.zf-dialog::backdrop{background:#11180ed4;backdrop-filter:blur(10px)}
.zf-shell{display:grid;grid-template-columns:220px minmax(0,1fr);height:100%;min-height:0}
.zf-side{display:flex;flex-direction:column;padding:27px 24px 23px 19px;color:#eff0e7}
.zf-wordmark{display:flex;justify-content:space-between;align-items:center;font-size:15px;letter-spacing:.16em;font-weight:600}.zf-wordmark>span{color:#d4fc7d;font-size:27px;line-height:1}
.zf-side-title{font-size:21px;line-height:1.25;letter-spacing:-.035em;margin-top:34px;color:#eff0e7}
.zf-steps{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:6px}
.zf-steps button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 0;text-align:left;font-size:12px;color:#d4d9ca;line-height:1.3;transition:color .18s}
.zf-step-number{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border:1px solid #4a5546;border-radius:50%;font-size:10px;color:#aab6a1;transition:background .18s}
.zf-steps button:disabled{color:#87927f}.zf-steps button[aria-current="step"]{color:#e5ffb7}.zf-steps button[aria-current="step"] .zf-step-number{background:#d6fd82;border-color:#d6fd82;color:#182115}.zf-step-done{margin-left:auto;color:#cafa83;opacity:0}.zf-steps button[data-complete] .zf-step-done{opacity:1}.zf-steps button:hover:not(:disabled){color:#e5ffb7}.zf-side-bottom{font-size:11px;color:#a8b1a0;line-height:1.6;margin-top:auto;padding-top:26px}
.zf-main{display:flex;flex-direction:column;min-width:0;min-height:0;background:#f4f3eb;border-radius:15px;overflow:hidden}
.zf-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 30px 18px;flex:0 0 auto;border-bottom:1px solid #dedfd3}.zf-kicker{font-size:9px;letter-spacing:.16em;color:#69775c;line-height:1.5;margin-bottom:5px}.zf-head h2{margin:0;font-size:27px;line-height:1.15;letter-spacing:-.045em;color:#22291e}.zf-close{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0;border:1px solid #cbd0c0;border-radius:50%;font-size:26px;font-weight:400;line-height:1;color:#24311d;background:transparent}.zf-close:hover{background:#d9f998;border-color:#a8ba86}
.zf-form{display:flex;flex:1;flex-direction:column;min-height:0;margin:0}.zf-progress{flex:0 0 auto;padding:17px 30px 0}.zf-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:10px;line-height:1.4;color:#6a755e}.zf-progress [data-zf-selection]{text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:65%}.zf-track{height:3px;background:#dde1d2;border-radius:5px;overflow:hidden;margin-top:9px}.zf-track>span{display:block;width:16.6667%;height:100%;background:#6b813f;border-radius:5px;transition:width .22s ease}
.zf-scroll{padding:21px 30px 24px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b9c5a5 transparent;scroll-padding:12px}
.zf-step{padding:0;margin:0;border:0;min-width:0}.zf-step legend{display:block;padding:0;margin:0 0 8px;font-size:22px;line-height:1.15;font-weight:500;letter-spacing:-.035em;max-width:100%;color:#22291e}.zf-step legend:focus{outline:none}.zf-hint{font-size:11px;line-height:1.5;color:#68755c;margin-bottom:17px}.zf-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.zf-choice-grid--families{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.zf-choice-grid--modules{grid-template-columns:repeat(3,minmax(0,1fr))}.zf-dialog .zf-choice{position:relative;display:block;margin:0;min-width:0;font-size:12px;font-weight:400;line-height:1.3;cursor:pointer}.zf-dialog .zf-choice>input{position:absolute;width:1px;height:1px;min-height:0;padding:0;opacity:0;pointer-events:none;clip-path:inset(50%)}
.zf-choice-body{position:relative;display:flex;align-items:center;gap:10px;height:100%;min-height:52px;padding:12px 11px;background:#fafaf3;border:1px solid #d8ddcc;border-radius:9px;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;overflow-wrap:anywhere}.zf-choice-body>span:not(.zf-choice-mark):not(.zf-choice-number){flex:1}.zf-choice-mark{height:15px;width:15px;flex:0 0 15px;border:1px solid #b3bea4;border-radius:50%;background:transparent;position:relative;align-self:center}.zf-choice input[type="checkbox"]+.zf-choice-body .zf-choice-mark{border-radius:4px}.zf-choice-number{font-size:9px;line-height:1;color:#7a856c;align-self:flex-start;position:absolute;top:9px;left:11px}.zf-choice--family .zf-choice-body{min-height:75px;padding-top:24px;padding-bottom:10px;gap:6px;font-size:11px;line-height:1.25}.zf-choice--family .zf-choice-mark{height:13px;width:13px;flex-basis:13px}.zf-choice>input:checked+.zf-choice-body{background:#e3f6b9;border-color:#8fa764;box-shadow:inset 0 0 0 .5px #8fa764;color:#243315}.zf-choice>input:checked+.zf-choice-body .zf-choice-mark{background:#324426;border-color:#324426}.zf-choice>input:checked+.zf-choice-body .zf-choice-mark:after{content:"";position:absolute;left:4px;top:2px;width:4px;height:7px;border:solid #e2f8bd;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.zf-choice--family>input:checked+.zf-choice-body .zf-choice-mark:after{left:3px;top:1px}.zf-choice>input:focus-visible+.zf-choice-body{outline:2px solid #617b38;outline-offset:3px}.zf-choice:hover .zf-choice-body{border-color:#8e9e78;background:#f0f3e6}.zf-choice:hover>input:checked+.zf-choice-body{background:#dcedb0;border-color:#8fa764}
.zf-option-group+.zf-option-group{margin-top:21px}.zf-option-group h3{font-size:12px;line-height:1.4;letter-spacing:0;margin:0 0 8px;font-weight:500}.zf-choice-grid--timing{grid-template-columns:repeat(2,minmax(0,1fr))}.zf-choice-grid--timing .zf-choice-body{min-height:44px;padding-block:9px;font-size:11px}.zf-choice-grid--contact{grid-template-columns:repeat(3,minmax(0,1fr))}.zf-choice-grid--contact .zf-choice-body{min-height:40px;padding-block:9px;font-size:11px}
.zf-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px}.zf-field{min-width:0}.zf-field--full{grid-column:1/-1}.zf-dialog .zf-field label,.zf-dialog .zf-field-label{display:block;margin:0 0 5px;font-size:11px;font-weight:500;line-height:1.5;color:#435138}.zf-field label>span{font-weight:400;color:#7a856e}.zf-dialog .zf-field input,.zf-dialog .zf-field textarea{width:100%;min-height:41px;padding:10px 11px;border:1px solid #ced5c0;border-radius:7px;background:#fffef8;font-size:13px;line-height:1.45;color:#25311d}.zf-dialog .zf-field textarea{min-height:83px;max-height:200px;resize:vertical}.zf-dialog .zf-field input::placeholder,.zf-dialog .zf-field textarea::placeholder{font-size:12px;color:#859077}.zf-dialog .zf-field input:focus,.zf-dialog .zf-field textarea:focus{outline:2px solid #8ea85f;outline-offset:2px}.zf-url-field{margin-top:20px}.zf-error{margin:0 0 14px;padding:10px 12px;border:1px solid #d8b89e;border-radius:7px;background:#fff3e8;color:#743a19;font-size:12px;line-height:1.5}.zf-dialog [aria-invalid="true"]{border-color:#a8643e}
.zf-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 30px;background:#f4f3eb;border-top:1px solid #dbdfd0}.zf-local-note{font-size:9px;line-height:1.5;color:#707e61;max-width:165px}.zf-local-note>span{font-size:15px;vertical-align:-1px;color:#748c50}.zf-action-buttons{display:flex;gap:13px;align-items:center}.zf-back,.zf-next{display:inline-flex;justify-content:center;align-items:center;gap:13px;min-height:43px;padding:10px 16px;font-size:12px;line-height:1.35;border-radius:7px;font-weight:500;white-space:nowrap}.zf-back{color:#536247;padding-inline:4px}.zf-back:disabled{opacity:.35}.zf-back:hover:not(:disabled){color:#203516}.zf-next{background:#d7fa88;color:#23301a;border:1px solid #b5cd84;box-shadow:0 2px 0 #aabc8b;transition:background .16s,box-shadow .16s}.zf-next:hover{background:#e0ff9b;box-shadow:0 3px 0 #aabc8b}.zf-next>span,.zf-back>span{font-size:19px;line-height:1}.zf-dialog button:focus-visible{outline:2px solid #91b856;outline-offset:3px}
.zf-result{display:flex;flex:1;flex-direction:column;min-height:0}.zf-result-scroll{flex:1;min-height:0;overflow:auto;padding:26px 30px;overscroll-behavior:contain}.zf-result-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#dff5b2;color:#3a5025;font-size:24px;margin-bottom:15px}.zf-result h3{font-size:26px;line-height:1.2;letter-spacing:-.04em;margin:0 0 9px}.zf-result h3:focus{outline:none}.zf-result p{font-size:12px;color:#647158;line-height:1.6}.zf-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:12px;line-height:1.7;background:#eaedde;border:1px solid #d6ddc9;border-radius:10px;margin:19px 0 0;padding:18px}.zf-result-actions{flex:0 0 auto;display:flex;justify-content:space-between;gap:14px;padding:17px 30px;border-top:1px solid #dbdfd0}
@media(max-width:920px){.zf-dialog{width:calc(100vw - 32px)}.zf-shell{grid-template-columns:185px minmax(0,1fr)}.zf-side{padding:24px 17px 20px 13px}.zf-side-title{font-size:20px}.zf-head,.zf-actions,.zf-result-actions{padding-inline:23px}.zf-progress{padding-inline:23px}.zf-scroll,.zf-result-scroll{padding-inline:23px}.zf-steps button{font-size:11px;gap:8px}.zf-choice-grid--families{grid-template-columns:repeat(2,minmax(0,1fr))}.zf-choice--family .zf-choice-body{min-height:65px}.zf-local-note{max-width:130px}.zf-choice-grid--modules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.zf-dialog{width:calc(100vw - 16px);height:min(760px,calc(100dvh - 16px));padding:5px;border-radius:18px}.zf-shell{grid-template-columns:minmax(0,1fr)}.zf-side{display:none}.zf-main{border-radius:12px}.zf-head{padding:18px 17px 15px;gap:10px}.zf-head h2{font-size:23px;line-height:1.1}.zf-kicker{font-size:8px;letter-spacing:.12em;margin-bottom:6px}.zf-close{width:32px;height:32px;flex-basis:32px;font-size:25px}.zf-progress{padding:14px 17px 0}.zf-progress>div:first-child{font-size:10px;gap:8px}.zf-scroll{padding:20px 17px 20px}.zf-step legend{font-size:22px;line-height:1.17;margin-bottom:7px}.zf-hint{font-size:11px;margin-bottom:14px}.zf-choice-grid,.zf-choice-grid--families,.zf-choice-grid--modules{gap:7px}.zf-choice-body{min-height:51px;padding:10px;font-size:12px;gap:7px}.zf-choice--family .zf-choice-body{min-height:71px;padding:23px 10px 10px;font-size:11px;line-height:1.27}.zf-choice-grid--timing .zf-choice-body{font-size:11px;min-height:46px}.zf-choice-grid--contact{grid-template-columns:repeat(3,minmax(0,1fr))}.zf-choice-grid--contact .zf-choice-body{gap:5px;padding-inline:8px;font-size:10px;min-height:46px}.zf-choice-grid--contact .zf-choice-mark{width:12px;height:12px;flex-basis:12px}.zf-choice-grid--contact .zf-choice-mark:after{left:3px!important;top:1px!important;height:6px!important}.zf-fields{gap:13px 10px}.zf-field--full{grid-column:1/-1}.zf-dialog .zf-field input,.zf-dialog .zf-field textarea{font-size:16px;min-height:42px;padding:9px 10px}.zf-dialog .zf-field textarea{min-height:88px}.zf-dialog .zf-field label,.zf-dialog .zf-field-label{font-size:10px}.zf-field label>span{display:block;font-size:9px}.zf-actions{display:flex;flex-direction:column-reverse;align-items:stretch;gap:8px;padding:12px 17px 10px}.zf-action-buttons{justify-content:space-between;gap:12px}.zf-back,.zf-next{font-size:12px;min-height:43px;padding-inline:13px}.zf-back{padding-left:1px}.zf-local-note{max-width:none;text-align:center;font-size:9px}.zf-result-scroll{padding:23px 17px}.zf-result-actions{padding:13px 17px;gap:10px}.zf-result-actions .zf-next{font-size:10px;padding-inline:10px;gap:7px}.zf-result h3{font-size:24px}.zf-result pre{padding:14px;font-size:11px}}
@media(max-width:360px){.zf-head h2{font-size:20px}.zf-head,.zf-scroll,.zf-progress,.zf-actions,.zf-result-scroll,.zf-result-actions{padding-left:13px;padding-right:13px}.zf-choice--family .zf-choice-body{font-size:10px;min-height:69px}.zf-choice-grid--contact{grid-template-columns:1fr}.zf-choice-grid--contact .zf-choice-body{min-height:38px}.zf-next{font-size:11px}.zf-fields{grid-template-columns:1fr}}
/* Readable card labels at every viewport; the central panel keeps its own scroll. */
.zf-dialog .zf-choice-body{font-size:16px;font-weight:500;line-height:1.4;min-height:62px;padding:13px 14px}
.zf-dialog .zf-choice--family .zf-choice-body{font-size:16px;line-height:1.35;min-height:96px;padding:28px 14px 14px;gap:10px}
.zf-choice-number{font-size:11px;top:10px;left:14px}
.zf-steps button{font-size:14px}
.zf-step-number{font-size:11px}
.zf-hint{font-size:13px;line-height:1.5}
.zf-progress>div:first-child{font-size:12px}
.zf-option-group h3{font-size:15px}
.zf-dialog .zf-field label,.zf-dialog .zf-field-label{font-size:14px}
.zf-dialog .zf-field label [data-zf-need-label]{font:inherit;color:inherit;display:inline}
.zf-dialog .zf-field input,.zf-dialog .zf-field textarea{font-size:16px}
.zf-dialog .zf-field input::placeholder,.zf-dialog .zf-field textarea::placeholder{font-size:14px}
.zf-back,.zf-next{font-size:14px;min-height:46px}
.zf-error,.zf-result p,.zf-result pre{font-size:14px}
@media(max-width:640px){
  .zf-dialog .zf-choice-body{padding:12px 10px;font-size:16px}
  .zf-dialog .zf-choice--family .zf-choice-body{padding:27px 10px 13px;font-size:16px;min-height:100px;gap:7px}
  .zf-choice--family .zf-choice-mark{position:absolute;top:10px;right:10px}
  .zf-choice-number{left:10px}
  .zf-hint{font-size:13px}
  .zf-progress>div:first-child{font-size:11px}
  .zf-dialog .zf-choice-grid--contact .zf-choice-body{font-size:14px;padding-inline:8px}
  .zf-field label>span{font-size:12px}
  .zf-result-actions .zf-next{font-size:12px;white-space:normal}
}
@media(max-width:360px){
  .zf-choice-grid,.zf-choice-grid--families,.zf-choice-grid--modules,.zf-choice-grid--timing{grid-template-columns:1fr}
  .zf-dialog .zf-choice--family .zf-choice-body{font-size:16px;min-height:76px}
}
@media(prefers-reduced-motion:reduce){.zf-dialog[open]{animation:none}.zf-dialog *{transition:none!important;scroll-behavior:auto!important}}
