.cm-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.52);backdrop-filter:blur(4px);animation:cm-fade-in .2s ease;padding:16px}@keyframes cm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cm-slide-up{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.cm-modal{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:16px;width:100%;max-width:420px;padding:32px;background:var(--panel,#fff);border-radius:16px;box-shadow:0 20px 48px rgba(0,0,0,.14);animation:cm-slide-up .25s ease;font-family:var(--font-inter),sans-serif}.cm-modal--centered{align-items:center;text-align:center}.cm-close-btn{position:absolute;top:16px;right:16px;width:36px;height:36px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--bg-secondary,rgba(100,116,139,.08));color:var(--text-secondary,#64748b);cursor:pointer;transition:background .15s,color .15s}.cm-close-btn:hover:not(:disabled){background:var(--border,#e2e8f0);color:var(--text,#0f172a)}.cm-close-btn:disabled{opacity:.4;cursor:not-allowed}.cm-keys-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;margin-bottom:4px}.cm-keys-icon svg{width:36px;height:36px}.cm-keys-badge{position:absolute;bottom:-4px;right:-4px;background:var(--accent,#d97706);color:#fff;font-size:12px;font-weight:700;line-height:1;padding:3px 6px;border-radius:10px;border:2px solid var(--panel,#fff)}.cm-title{font-size:20px;font-weight:700;color:var(--text,#0f172a);margin:0;line-height:1.3}.cm-desc{font-size:15px;color:var(--muted,#475569);margin:0;line-height:1.5}.cm-desc--bold{font-size:16px;font-weight:600;color:var(--text,#0f172a)}.cm-question{font-size:15px;color:var(--text,#0f172a);margin:0;line-height:1.55}.cm-hint{font-size:13px;color:var(--muted,#475569);margin:0;line-height:1.5}.cm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;padding:0 20px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s,transform .1s;border:none;white-space:nowrap}.cm-btn:disabled{opacity:.5;cursor:not-allowed}.cm-btn:not(:disabled):active{transform:scale(.97)}.cm-btn--primary{background:var(--primary,#2563eb);color:#fff;width:100%}.cm-btn--primary:hover:not(:disabled){background:var(--primary-hover,#1d4ed8)}.cm-survey-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:color-mix(in srgb,var(--primary,#2563eb) 8%,transparent);color:var(--primary,#2563eb);margin-bottom:4px}.cm-survey-actions{display:flex;gap:10px;width:100%}.cm-survey-option{flex:1;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;border:1.5px solid var(--border,#e2e8f0);border-radius:12px;background:var(--bg,#fff);color:var(--text,#0f172a);font-size:15px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,transform .1s}.cm-survey-option:hover:not(:disabled){border-color:var(--primary,#2563eb);background:color-mix(in srgb,var(--primary,#2563eb) 5%,var(--bg,#fff))}.cm-survey-option:not(:disabled):active{transform:scale(.98)}.cm-survey-option:disabled{opacity:.5;cursor:not-allowed}.cm-btn--skip{width:100%;background:transparent;color:var(--muted,#475569);border:1px solid var(--border,#e2e8f0);font-weight:500}.cm-btn--skip:hover:not(:disabled){background:var(--bg-secondary,#f1f5f9);color:var(--text,#0f172a)}@media (max-width:480px){.cm-overlay{align-items:flex-end;padding:0}.cm-modal{max-width:100%;border-radius:20px 20px 0 0;padding:24px 20px calc(20px + env(safe-area-inset-bottom, 0px));animation:cm-slide-up-mobile .28s ease}@keyframes cm-slide-up-mobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}.cm-title{font-size:18px}.cm-btn{height:48px;font-size:15px}.cm-close-btn{width:36px;height:36px}}:root[data-theme=dark] .cm-survey-option{background:var(--panel,#151a22)}:root[data-theme=dark] .cm-survey-option:hover:not(:disabled){background:color-mix(in srgb,var(--primary,#3b82f6) 10%,var(--panel,#151a22))}