.occ-registration{max-width:1100px;margin:0 auto;padding:30px}.occ-reg-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.occ-eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;opacity:.65}.occ-reg-top h2{margin:6px 0;font-size:32px}.occ-reg-top p{margin:0;opacity:.72}.occ-progress-number{font-weight:700;font-size:18px}.occ-progress{height:8px;background:#e8edf3;border-radius:99px;overflow:hidden;margin-bottom:18px}.occ-progress span{display:block;height:100%;background:#1d4ed8;border-radius:99px}.occ-step-labels{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.occ-step-labels span{font-size:12px;padding:7px 10px;border-radius:999px;background:#f3f5f8;color:#667085}.occ-step-labels span.active{background:#e6efff;color:#174ea6;font-weight:700}.occ-reg-error,.occ-reg-success{padding:15px 18px;border-radius:10px;margin-bottom:20px}.occ-reg-error{background:#fff0f0;color:#9b1c1c;border:1px solid #f2c2c2}.occ-reg-success{background:#eefbf3;border:1px solid #b9e4c8}.occ-form-section{border:1px solid #e3e8ef;border-radius:14px;padding:28px;background:#fff}.occ-form-section h3{margin:0 0 8px;font-size:24px}.occ-form-section>p{margin:0 0 24px;color:#667085}.occ-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.occ-field{display:flex;flex-direction:column;gap:7px}.occ-field.occ-full{grid-column:1/-1}.occ-field label{font-size:14px;font-weight:600}.occ-field label span{color:#c62828}.occ-field input,.occ-field textarea{width:100%;box-sizing:border-box;border:1px solid #d7dee8;border-radius:8px;padding:12px 13px;background:#fff;font:inherit}.occ-field textarea{resize:vertical}.occ-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.occ-doc{border:1px dashed #cbd5e1;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px}.occ-file{border:1px solid #d7dee8;border-radius:8px;padding:12px;cursor:pointer}.occ-file input{width:100%}.occ-doc small{opacity:.65}.occ-private-note{margin-top:18px;padding:12px;border-radius:8px;background:#f7f9fc;font-size:13px}.occ-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.occ-plan{border:1px solid #d7dee8;border-radius:12px;padding:20px;cursor:pointer;display:block}.occ-plan.selected{border-color:#1d4ed8;box-shadow:0 0 0 2px rgba(29,78,216,.12)}.occ-plan input{margin-right:10px}.occ-plan span{display:inline-flex;flex-direction:column;gap:5px;vertical-align:top}.occ-plan small{opacity:.7}.occ-attestation{display:flex;gap:12px;align-items:flex-start;padding:18px;border:1px solid #d7dee8;border-radius:10px}.occ-reg-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:20px}.occ-actions-right{display:flex;align-items:center;gap:15px}.occ-save-note{font-size:12px;opacity:.65}.occ-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:8px;text-decoration:none;border:1px solid transparent;cursor:pointer;font-weight:700}.occ-btn-primary{background:#1d4ed8;color:#fff}.occ-btn-secondary{background:#fff;border-color:#d7dee8;color:#344054}@media(max-width:800px){.occ-grid,.occ-doc-grid,.occ-plan-grid{grid-template-columns:1fr}.occ-reg-top{flex-direction:column}.occ-actions-right{flex-direction:column;align-items:flex-end}.occ-save-note{display:none}}

.occ-reg-step[hidden]{display:none!important}
.occ-reg-step{scroll-margin-top:30px}
.occ-step-labels span.completed{opacity:.75}
.occ-btn:disabled{opacity:.6;cursor:wait}
.occ-reg-error[hidden],.occ-reg-success[hidden]{display:none!important}
.occ-reg-success{margin:18px 0;padding:20px;border-radius:12px}

.occ-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px 18px;margin-top:8px}.occ-check-option{display:flex;align-items:flex-start;gap:9px;padding:9px 11px;border:1px solid #dbe4f1;border-radius:8px;background:#fff;cursor:pointer}.occ-check-option input{margin-top:3px}.occ-check-option span{line-height:1.35}.occ-tax-checkbox-field small{display:block;margin-top:8px;color:#6b7890}.occ-empty-options{color:#6b7890}@media(max-width:700px){.occ-checkbox-grid{grid-template-columns:1fr}}

/* Structured taxonomy fields: compact dropdown with checkboxes */
.occ-multi-select{position:relative;width:100%}.occ-multi-select-toggle{width:100%;min-height:46px;padding:12px 13px;border:1px solid #d7dee8;border-radius:8px;background:#fff;color:#344054;font:inherit;text-align:left;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.occ-multi-select-toggle:hover{border-color:#b8c5d6}.occ-multi-select-arrow{font-size:16px;opacity:.65}.occ-multi-select-panel{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 5px);max-height:280px;overflow:auto;padding:7px;background:#fff;border:1px solid #d7dee8;border-radius:8px;box-shadow:0 10px 28px rgba(16,24,40,.12)}.occ-multi-select-panel[hidden]{display:none!important}.occ-multi-select-panel .occ-check-option{border:0;border-radius:6px;margin:1px 0;padding:9px 10px}.occ-multi-select-panel .occ-check-option:hover{background:#f6f8fb}.occ-tax-checkbox-field small{margin-top:7px}

/* v1.5.25 - polished checkbox dropdown */
.occ-tax-checkbox-field .occ-multi-select{position:relative;width:100%;max-width:100%;}
.occ-tax-checkbox-field .occ-multi-select-toggle{box-sizing:border-box;width:100%;min-height:46px;padding:11px 14px;border:1px solid #cfd8e6;border-radius:8px;background:#fff;color:#344054;font:inherit;font-size:14px;line-height:22px;text-align:left;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;}
.occ-tax-checkbox-field .occ-multi-select-toggle:hover,.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"]{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.08);}
.occ-tax-checkbox-field .occ-multi-select-toggle span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400;color:#344054;}
.occ-tax-checkbox-field .occ-multi-select-arrow{flex:0 0 auto;font-size:13px;line-height:1;color:#667085;transition:transform .15s ease;}
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"] .occ-multi-select-arrow{transform:rotate(180deg);}
.occ-tax-checkbox-field .occ-multi-select-panel{box-sizing:border-box;position:absolute!important;z-index:99999!important;left:0!important;right:0!important;top:calc(100% + 6px)!important;width:100%!important;max-height:260px;overflow-y:auto;overflow-x:hidden;padding:6px!important;background:#fff!important;border:1px solid #d7dee8!important;border-radius:9px!important;box-shadow:0 12px 30px rgba(16,24,40,.14)!important;}
.occ-tax-checkbox-field .occ-multi-select-panel[hidden]{display:none!important;}
.occ-tax-checkbox-field .occ-multi-select-panel .occ-check-option{box-sizing:border-box!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-height:40px;margin:0!important;padding:8px 10px!important;border:0!important;border-radius:6px!important;background:#fff!important;color:#344054!important;font-size:14px!important;font-weight:400!important;line-height:20px!important;cursor:pointer;}
.occ-tax-checkbox-field .occ-multi-select-panel .occ-check-option:hover{background:#f5f8fc!important;}
.occ-tax-checkbox-field .occ-multi-select-panel .occ-check-option input[type="checkbox"]{appearance:auto!important;-webkit-appearance:auto!important;display:block!important;position:static!important;flex:0 0 auto!important;width:16px!important;height:16px!important;min-width:16px!important;margin:0 10px 0 0!important;padding:0!important;}
.occ-tax-checkbox-field .occ-multi-select-panel .occ-check-option span{display:block!important;flex:1 1 auto!important;width:auto!important;margin:0!important;padding:0!important;color:#344054!important;font-size:14px!important;font-weight:400!important;line-height:20px!important;text-align:left!important;}
.occ-tax-checkbox-field .occ-multi-select-panel::-webkit-scrollbar{width:8px;}
.occ-tax-checkbox-field .occ-multi-select-panel::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px;}

/* v1.5.26 - active dropdown text/arrow contrast */
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"]{
  background:#cf2f68 !important;
  color:#fff !important;
  border-color:#cf2f68 !important;
  box-shadow:0 0 0 3px rgba(207,47,104,.12) !important;
}
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"] span:first-child{
  color:#fff !important;
}
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"] .occ-multi-select-arrow{
  color:#fff !important;
  opacity:1 !important;
}

/* v1.5.27 - keep dropdown toggle background/text unchanged on hover and active */
.occ-tax-checkbox-field .occ-multi-select-toggle:hover,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus,
.occ-tax-checkbox-field .occ-multi-select-toggle:active,
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"]{
  background:#fff !important;
  color:#344054 !important;
  border-color:#2563eb !important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08) !important;
}
.occ-tax-checkbox-field .occ-multi-select-toggle:hover span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle:active span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"] span:first-child{
  color:#344054 !important;
}
.occ-tax-checkbox-field .occ-multi-select-toggle:hover .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle:active .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"] .occ-multi-select-arrow{
  color:#667085 !important;
  opacity:.65 !important;
}

/* v1.5.28 - dropdown toggle must stay white/black on hover, focus, active and open */
.occ-tax-checkbox-field .occ-multi-select-toggle,
.occ-tax-checkbox-field .occ-multi-select-toggle:hover,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus-visible,
.occ-tax-checkbox-field .occ-multi-select-toggle:active,
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"]{
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  color: #344054 !important;
  border-color: #d7dee8 !important;
  box-shadow: none !important;
}
.occ-tax-checkbox-field .occ-multi-select-toggle span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle:hover span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus-visible span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle:active span:first-child,
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"] span:first-child{
  color: #344054 !important;
}
.occ-tax-checkbox-field .occ-multi-select-toggle .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle:hover .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle:focus-visible .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle:active .occ-multi-select-arrow,
.occ-tax-checkbox-field .occ-multi-select-toggle[aria-expanded="true"] .occ-multi-select-arrow{
  color: #667085 !important;
  opacity: .65 !important;
}
/* Membership plan selection in application step 2 */
.occ-membership-selection .occ-plan-grid{align-items:stretch}
.occ-membership-selection .occ-application-plan{position:relative;display:flex;flex-direction:column;gap:8px;padding:22px 20px 18px;background:#fff;border:1px solid #dce4ef;border-radius:13px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.occ-membership-selection .occ-application-plan:hover{border-color:#b8c9e5;transform:translateY(-1px)}
.occ-membership-selection .occ-application-plan.selected{border-color:#1d4ed8;box-shadow:0 0 0 3px rgba(29,78,216,.10)}
.occ-membership-selection .occ-application-plan input{position:absolute;opacity:0;pointer-events:none}
.occ-membership-selection .occ-plan-name strong{font-size:18px;color:#17213b}
.occ-membership-selection .occ-plan-price{font-size:27px;line-height:1.1;color:#17213b;margin-top:5px}
.occ-membership-selection .occ-plan-note{color:#6b7890;line-height:1.4;min-height:34px}
.occ-membership-selection .occ-plan-features{margin:10px 0 12px;flex:1}
.occ-membership-selection .occ-plan-features li{display:flex;gap:8px;align-items:flex-start;padding:5px 0;color:#5f6f86;font-size:12px;line-height:1.4}
.occ-membership-selection .occ-plan-features li span{color:#18a058;font-weight:800;flex:0 0 auto}
.occ-membership-selection .occ-plan-choose{display:flex;align-items:center;justify-content:center;min-height:38px;padding:9px 12px;border-radius:8px;background:#1d4ed8;color:#fff;font-size:12px;font-weight:700;text-align:center}
.occ-membership-selection .occ-application-plan.selected .occ-plan-choose{background:#1744b5}
.occ-plan-selection-note{margin-top:16px;padding:12px 14px;border-radius:9px;background:#f7f9fc;border:1px solid #e6ebf2;color:#68768c;font-size:12px;line-height:1.5}
@media(max-width:800px){.occ-membership-selection .occ-plan-grid{grid-template-columns:1fr}}

/* v1.5.31 - membership entitlement counters + upgrade popup */
.occ-limit-counter{display:block;margin-top:6px;color:#667085;font-size:11px;line-height:1.4}
.occ-limit-counter.is-over{color:#c62828;font-weight:700}
.occ-plan-lock-note{color:#8a5a00;font-weight:600;margin-left:5px}
.occ-plan-locked{opacity:.68}
.occ-upgrade-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}
.occ-upgrade-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.48)}
.occ-upgrade-dialog{position:relative;z-index:1;width:min(460px,100%);background:#fff;border:1px solid #dbe3ef;border-radius:16px;box-shadow:0 18px 60px rgba(15,23,42,.22);padding:28px;color:#17213b}
.occ-upgrade-dialog h3{margin:0 0 10px;font-size:22px;line-height:1.25;color:#17213b}
.occ-upgrade-dialog p{margin:8px 0;color:#667085;font-size:14px;line-height:1.55}
.occ-upgrade-icon{width:42px;height:42px;border-radius:12px;background:#eef4ff;color:#2864e7;display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:18px}
.occ-upgrade-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#667085;font-size:28px;line-height:1;cursor:pointer;padding:5px}
.occ-upgrade-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px;flex-wrap:wrap}
