.cbm{--m-blue:var(--ea-blue,#1a5c8f);--m-red:var(--ea-red,#e8304f);--m-orange:var(--ea-orange,#f5a800);--m-navy:#12283d;--m-line:var(--ea-line,#e6e8ec);--m-muted:var(--ea-muted,#6b7280);position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:max(16px,6vh) 16px 16px;overflow-y:auto;background:rgba(12,30,50,.55);backdrop-filter:blur(3px);animation:cbm-fade .2s ease}.cbm *,.cbm :after,.cbm :before{box-sizing:border-box}.cbm__box{position:relative;width:100%;max-width:480px;padding:clamp(22px,4vw,32px);border-radius:22px;background:#fff;color:#2b2f36;box-shadow:0 30px 70px rgba(10,25,45,.35);animation:cbm-pop .28s cubic-bezier(.22,.8,.3,1)}.cbm__box:before{content:"";position:absolute;left:24px;right:24px;top:0;height:4px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,var(--m-blue),var(--m-orange),var(--m-red))}.cbm__close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#f1f4f8;color:var(--m-navy);cursor:pointer;transition:background .2s}.cbm__close:hover{background:#e3e9f0}.cbm__form{display:grid;gap:12px}.cbm h3{margin:0;padding-right:40px;font-size:22px;font-weight:800;color:var(--m-navy)}.cbm__sub{margin:-4px 0 4px;font-size:14.5px;line-height:1.5;color:var(--m-muted)}.cbm__field{display:grid;gap:6px}.cbm__field label{font-size:14px;font-weight:700;color:var(--m-navy)}.cbm__field input,.cbm__field select,.cbm__field textarea{width:100%;padding:12px 14px;border:1.5px solid var(--m-line);border-radius:10px;background:#fff;font:inherit;font-size:16px;color:inherit;transition:border-color .2s,box-shadow .2s}.cbm__field textarea{resize:vertical}.cbm__field input:focus,.cbm__field select:focus,.cbm__field textarea:focus{outline:none;border-color:var(--m-blue);box-shadow:0 0 0 4px rgba(24,141,201,.15)}.cbm__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;height:48px;margin-top:4px;border:0;border-radius:12px;background:var(--m-red);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 10px 22px rgba(232,48,79,.3);transition:filter .2s,transform .2s}.cbm__btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.cbm__btn:disabled{opacity:.7;cursor:wait;transform:none}.cbm__msg{min-height:18px;margin:0;font-size:14px;font-weight:600}.cbm__msg.is-error{color:var(--m-red)}.cbm__done{display:grid;justify-items:center;gap:10px;padding:12px 0 4px;text-align:center}.cbm__done p{margin:0 0 6px;color:var(--m-muted)}.cbm__done h3{padding:0}.cbm__tick{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#e8f8ee;color:#16a34a}@keyframes cbm-fade{0%{opacity:0}}@keyframes cbm-pop{0%{opacity:0;transform:translateY(16px) scale(.98)}}@media (prefers-reduced-motion:reduce){.cbm,.cbm__box{animation:none}}.cbm--glass{background:rgba(10,30,55,.28);-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%);animation:cbm-fade .3s ease}.cbm--glass .cbm__box{--glass-spring:cubic-bezier(0.16,1,0.3,1);isolation:isolate;border-radius:28px;color:#1f2937;background:linear-gradient(180deg,rgba(255,255,255,.8),rgba(255,255,255,.62));-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);border:1px solid rgba(255,255,255,.8);box-shadow:inset 0 1px 1px rgba(255,255,255,.95),inset 0 -1px 3px rgba(26,92,143,.08),0 30px 70px rgba(10,25,45,.3),0 2px 8px rgba(10,25,45,.1);animation:cbm-glass-in .6s var(--glass-spring) backwards}@supports (animation-timing-function:linear(0,1)){.cbm--glass .cbm__box{--glass-spring:linear(0,0.009,0.035 2.1%,0.141 4.4%,0.723 12.9%,0.938 16.7%,1.017 19.6%,1.067 22.4%,1.089 25.4%,1.088 28.3%,1.059 34.1%,1.015 42.6%,0.998 50%,0.993 56.8%,1.001 77.3%,1)}}.cbm--glass .cbm__box:before{left:8%;right:8%;top:1px;height:46%;z-index:-1;border-radius:28px 28px 60px 60px;background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(255,255,255,0));pointer-events:none}.cbm--glass .cbm__close{background:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.85);box-shadow:inset 0 1px 1px rgba(255,255,255,1),0 2px 8px rgba(15,30,60,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cbm--glass .cbm__field input,.cbm--glass .cbm__field select,.cbm--glass .cbm__field textarea{border:1px solid rgba(255,255,255,.9);border-radius:14px;background:rgba(255,255,255,.6);box-shadow:inset 0 1px 2px rgba(15,30,60,.06),0 1px 0 rgba(255,255,255,.8)}.cbm--glass .cbm__field input:focus,.cbm--glass .cbm__field select:focus,.cbm--glass .cbm__field textarea:focus{border-color:rgba(24,141,201,.55);background:rgba(255,255,255,.82);box-shadow:0 0 0 4px rgba(24,141,201,.16)}.cbm--glass .cbm__btn{position:relative;overflow:hidden;isolation:isolate;height:50px;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:linear-gradient(180deg,rgba(24,141,201,.92),rgba(16,70,104,.92));box-shadow:inset 0 1px 1px rgba(255,255,255,.55),inset 0 -2px 6px rgba(0,0,0,.15),0 10px 22px rgba(24,141,201,.32)}.cbm--glass .cbm__btn:before{content:"";position:absolute;inset:1px 10% 52% 10%;z-index:-1;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,0));pointer-events:none}.cbm--glass .cbm__btn:hover{filter:none;transform:none}.cbm--glass .cbm__btn:active{transform:scale(.97)}.cbm--glass .cbm__tick{background:rgba(232,248,238,.85);box-shadow:inset 0 1px 1px rgba(255,255,255,.9)}@keyframes cbm-glass-in{0%{opacity:0;transform:translateY(40px) scale(.92)}40%{opacity:1}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.cbm--glass .cbm__box{background:rgba(255,255,255,.97)}}@media (prefers-reduced-motion:reduce){.cbm--glass,.cbm--glass .cbm__box{animation:none}}@media (max-width:560px){.cbm--glass{top:var(--ea-header-h,64px);z-index:190;padding:8px 10px 16px;align-items:flex-start}.cbm--glass .cbm__box{max-height:calc(100dvh - var(--ea-header-h, 64px) - 24px);overflow-y:auto;overscroll-behavior:contain;transform-origin:top center;animation-name:cbm-glass-drop}}@keyframes cbm-glass-drop{0%{opacity:0;transform:translateY(-28px) scale(.94)}40%{opacity:1}}