*,:before,:after{box-sizing:border-box}:root{--navy:#1b3a6b;--navy-dark:#122849;--navy-light:#2c5282;--gold:#c8952a;--gold-hover:#a67722;--bg:#f0f4fa;--surface:#fff;--text:#2d3748;--text-light:#718096;--border:#cbd5e0;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #0000001a, 0 2px 4px #0000000f;--shadow-lg:0 10px 24px #0000001f, 0 4px 8px #0000000f;--radius:12px;--sans:"Segoe UI", system-ui, Roboto, sans-serif}body{font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{color:var(--navy-dark);margin:0;font-weight:700}p{margin:0}button{cursor:pointer;font-family:var(--sans);background:0 0;border:none}.app-wrapper{flex-direction:column;min-height:100svh;display:flex}.app-header{background:var(--navy);color:#fff;padding:20px 24px;box-shadow:0 2px 8px #0003}.header-inner{justify-content:center;max-width:860px;margin:0 auto;display:flex}.header-logo{object-fit:contain;width:auto;height:64px}.page-tagline{color:var(--navy);letter-spacing:.5px;text-transform:uppercase;font-size:1.05rem;font-weight:600}.app-main{flex-direction:column;flex:1;align-items:center;gap:36px;padding:40px 20px 60px;display:flex}.progress-bar-wrapper{align-items:center;gap:0;width:100%;max-width:480px;display:flex}.progress-step{flex:1;align-items:center;gap:8px;display:flex}.progress-step:last-child{flex:none}.progress-dot{border:2px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--text-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;transition:all .2s;display:flex}.progress-dot.active{border-color:var(--navy);background:var(--navy);color:#fff}.progress-dot.done{border-color:var(--gold);background:var(--gold);color:#fff}.progress-label{color:var(--text-light);white-space:nowrap;font-size:.78rem}.progress-label.active{color:var(--navy);font-weight:600}.progress-connector{background:var(--border);flex:1;height:2px;margin:0 8px;transition:background .2s}.progress-connector.done{background:var(--gold)}.step-container{width:100%;max-width:780px}.step{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-md);text-align:center;padding:40px 36px}.step-title{color:var(--navy-dark);margin-bottom:8px;font-size:1.5rem}.step-subtitle{color:var(--text-light);margin-bottom:32px;font-size:.95rem}.card-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:8px;display:grid}.card-grid.two-col{grid-template-columns:repeat(2,1fr);max-width:520px;margin:0 auto 8px}.selection-card{border:2px solid var(--border);border-radius:var(--radius);color:var(--text);text-align:center;background:#fafbfd;flex-direction:column;align-items:center;gap:10px;padding:28px 20px;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;display:flex}.selection-card:hover:not(.disabled){border-color:var(--navy);box-shadow:var(--shadow-lg);background:var(--surface);transform:translateY(-3px)}.selection-card.disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.4)}.card-icon{font-size:2.2rem;line-height:1}.card-label{color:var(--navy-dark);font-size:1rem;font-weight:700}.card-desc{color:var(--text-light);font-size:.82rem;line-height:1.4}.coming-soon-badge{text-transform:uppercase;letter-spacing:.5px;background:var(--border);color:var(--text-light);border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:700}.agent-card{padding:24px 20px}.agent-avatar{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.4rem;font-weight:800;display:flex}.state-select-wrapper{flex-direction:column;align-items:center;gap:8px;margin-bottom:28px;display:flex}.state-label{color:var(--navy);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.state-select{font-family:var(--sans);color:var(--text);background:var(--surface);border:2px solid var(--border);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23718096' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border-radius:8px;min-width:260px;padding:10px 40px 10px 16px;font-size:1rem;transition:border-color .18s}.state-select:focus{border-color:var(--navy);outline:none}.hint-text{color:var(--text-light);margin-top:12px;font-size:.9rem}.back-btn{color:var(--navy-light);border-radius:8px;align-items:center;gap:6px;margin-top:28px;padding:8px 16px;font-size:.88rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.back-btn:hover{color:var(--navy-dark);background:#1b3a6b14}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;background:#0a1428a6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:780px;height:82vh;max-height:760px;display:flex;overflow:hidden}.modal-header{background:var(--navy);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.modal-title{color:#fff;letter-spacing:.3px;font-size:.95rem;font-weight:700}.modal-close{color:#fffc;border-radius:6px;padding:4px 8px;font-size:1rem;transition:background .15s,color .15s}.modal-close:hover{color:#fff;background:#ffffff26}.modal-iframe{border:none;flex:1;width:100%}.data-message{border-radius:var(--radius);text-align:center;padding:32px;font-size:1rem}.data-message.loading{background:var(--surface);color:var(--text-light);box-shadow:var(--shadow-sm)}.data-message.error{color:#c53030;background:#fff5f5;border:1px solid #fed7d7}.app-footer{background:var(--navy-dark);color:#ffffff8c;text-align:center;padding:18px 24px;font-size:.82rem}@media (width<=640px){.header-logo{height:48px}.step{padding:28px 20px}.card-grid{grid-template-columns:1fr}.card-grid.two-col{grid-template-columns:1fr;max-width:100%}.step-title{font-size:1.2rem}.progress-label{display:none}.progress-connector{margin:0 4px}}
