*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{color:#111827;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background-color:#eceef1;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden}body{background-color:#eceef1;justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow-x:hidden}#root{justify-content:center;align-items:center;width:100vw;min-height:100dvh;display:flex}:focus-visible{outline-offset:2px;outline:2px solid #2563eb}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.page-wrapper{box-sizing:border-box;justify-content:center;align-items:center;width:100vw;min-height:100dvh;margin:0;padding:0;display:flex}.popup-container{box-sizing:border-box;background-color:#fff;border:1px solid #d1d5db;border-radius:12px;flex-direction:column;width:95vw;height:95dvh;display:flex;overflow:hidden;box-shadow:0 4px 20px #0000007a}@media (width>=600px){.popup-container{max-width:460px;max-height:620px}}.popup-content{box-sizing:border-box;-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:space-between;height:100%;padding:24px 20px;display:flex;overflow-y:auto}.popup-body{flex-direction:column;gap:14px;display:flex}.popup-heading{color:#000;margin:0;font-size:1.5rem;font-weight:700;line-height:1.25}.popup-paragraph{color:#1f2937;margin:0;font-size:1rem;line-height:1.55}.popup-subtext{color:#6b7280;margin:4px 0 0;font-size:.85rem;line-height:1.45}.popup-footer{margin-top:auto;padding-top:20px}.call-button{cursor:pointer;box-sizing:border-box;text-align:center;touch-action:manipulation;-webkit-user-select:none;user-select:none;background-color:#16a34a;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;padding:12px 16px;font-size:1.1rem;font-weight:700;text-decoration:none;transition:background-color .15s;display:flex;color:#fff!important}.call-button:hover{background-color:#15803d}.call-button:active{background-color:#166534}.call-button-text{font-weight:700}.call-button-number{opacity:.95;font-size:.95rem;font-weight:500}.dev-inspector{z-index:9999;font-family:system-ui,sans-serif;position:fixed;bottom:8px;right:8px}.dev-inspector__toggle{color:#f9fafb;cursor:pointer;opacity:.75;background:#1f2937;border:1px solid #4b5563;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:.72rem;display:flex}.dev-inspector__toggle:hover{opacity:1}.dev-inspector__panel{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;flex-direction:column;gap:8px;width:300px;max-height:70vh;padding:12px;font-size:.75rem;display:flex;position:absolute;bottom:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 10px 25px #00000026}.dev-inspector__header{border-bottom:1px solid #e5e7eb;padding-bottom:4px;font-weight:700}.signal-item{flex-direction:column;gap:2px;padding:4px 0;display:flex}.signal-item__title{align-items:center;gap:4px;display:flex}.signal-indicator{border-radius:50%;width:8px;height:8px;display:inline-block}.signal--pass{background-color:#16a34a}.signal--fail{background-color:#dc2626}.signal-item__detail{color:#6b7280;font-size:.68rem}.button-group{flex-direction:column;gap:4px;margin-top:4px;display:flex}.btn-preset{cursor:pointer;text-align:left;background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;padding:4px 6px;font-size:.72rem}.btn-preset:hover{background:#e5e7eb}.first-touch-overlay{z-index:99990;opacity:0;cursor:pointer;touch-action:manipulation;background:0 0;width:100vw;height:100dvh;position:fixed;inset:0}.interaction-overlay{z-index:100000;-webkit-backdrop-filter:blur(6px);box-sizing:border-box;cursor:pointer;background:#0f172abf;justify-content:center;align-items:center;width:100vw;height:100dvh;padding:16px;animation:.2s ease-out fadeInOverlay;display:flex;position:fixed;inset:0}.interaction-modal{text-align:center;box-sizing:border-box;cursor:default;background:#fff;border-radius:18px;flex-direction:column;align-items:center;width:100%;max-width:380px;padding:26px 20px 22px;animation:.25s cubic-bezier(.16,1,.3,1) popInModal;display:flex;position:relative;box-shadow:0 24px 48px -12px #00000073,0 0 0 1px #00000014}.interaction-close-btn{color:#6b7280;cursor:pointer;background:#f3f4f6;border:none;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:20px;line-height:1;transition:background .15s,color .15s,transform .1s;display:flex;position:absolute;top:12px;right:12px}.interaction-close-btn:hover{color:#111827;background:#e5e7eb}.interaction-close-btn:active{transform:scale(.92)}.interaction-badge{color:#1d4ed8;text-transform:uppercase;letter-spacing:.4px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9999px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.interaction-badge-dot{background:#2563eb;border-radius:50%;width:6px;height:6px;animation:1.8s infinite pulseDot;box-shadow:0 0 0 3px #2563eb40}.interaction-title{color:#111827;margin:14px 0 8px;font-size:1.35rem;font-weight:800;line-height:1.25}.interaction-description{color:#4b5563;margin:0 0 20px;font-size:.95rem;line-height:1.5}.interaction-cta-btn{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;min-height:52px;padding:14px 20px;font-size:1.05rem;font-weight:700;transition:transform .1s,background .15s,box-shadow .15s;animation:2s ease-in-out infinite pulseCta;display:flex;box-shadow:0 4px 16px #16a34a6b}.interaction-cta-btn:hover{background:#15803d;box-shadow:0 6px 20px #16a34a85}.interaction-cta-btn:active{background:#166534;transform:scale(.96)}.interaction-subtext{color:#6b7280;margin:10px 0 0;font-size:.78rem}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes popInModal{0%{opacity:0;transform:scale(.92)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.3)}}@keyframes pulseCta{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}
