*,*:before,*:after{box-sizing:border-box}:root{--navy: #1b3a6b;--navy-dark: #122849;--navy-light: #2c5282;--gold: #c8952a;--gold-soft: #f7edd7;--bg: #f0f4fa;--surface: #ffffff;--surface-soft: #f8fbff;--text: #2d3748;--text-light: #718096;--border: #cbd5e0;--border-soft: #dde6f1;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .06);--radius: 14px;--sans: "Segoe UI", system-ui, Roboto, sans-serif}body{margin:0;font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}#root{min-height:100svh}h1,h2,h3{margin:0;font-weight:700;color:var(--navy-dark)}p{margin:0}button,select{font:inherit}button{cursor:pointer;border:none;background:none}.widget-shell{min-height:100svh;padding:24px 16px 32px}.widget-card{max-width:980px;margin:0 auto;background:var(--surface);border-radius:20px;box-shadow:var(--shadow-md);overflow:hidden}.widget-header{padding:24px 24px 18px;background:linear-gradient(180deg,#d9effa,#c7e7f7);border-bottom:1px solid rgba(27,58,107,.08)}.widget-title{font-size:1.55rem;line-height:1.15}.progress-row{display:flex;align-items:center;gap:8px;margin-top:18px;overflow-x:auto}.progress-step{display:inline-flex;align-items:center;gap:8px;flex:1 0 auto}.progress-dot{width:28px;height:28px;border-radius:999px;border:2px solid var(--border);background:var(--surface);color:var(--text-light);display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700}.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{font-size:.8rem;white-space:nowrap;color:var(--text-light)}.progress-label.active{color:var(--navy);font-weight:700}.progress-bar{width:28px;height:2px;background:var(--border)}.progress-bar.done{background:var(--gold)}.widget-body{padding:24px}.data-message{padding:20px;border-radius:14px;text-align:center;font-size:.95rem}.data-message.loading{background:var(--surface-soft);color:var(--text-light)}.data-message.error{background:#fff5f5;color:#c53030;border:1px solid #fed7d7}.data-message.success{background:#eff8f0;color:#20663a;border:1px solid #c7e4cf}.selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.selection-grid.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.selection-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px 18px;border-radius:18px;border:1px solid rgba(27,58,107,.12);background:var(--surface-soft);text-align:center;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.selection-card:hover:not(.disabled){border-color:var(--navy);box-shadow:0 10px 20px #12284914;transform:translateY(-2px)}.selection-card.disabled{opacity:.55;cursor:not-allowed}.card-label{font-size:1rem;font-weight:700;color:var(--navy-dark)}.card-desc{font-size:.88rem;color:var(--text-light);line-height:1.45}.coming-soon{display:inline-flex;padding:4px 10px;border-radius:999px;background:var(--border);color:var(--text-light);font-size:.72rem;font-weight:700;text-transform:uppercase}.avatar{width:52px;height:52px;border-radius:999px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:800}.section-title{font-size:1.32rem;margin-bottom:8px}.section-subtitle{margin-bottom:24px;color:var(--text-light);font-size:.94rem}.select-control,.text-control{width:100%;min-width:250px;border:2px solid var(--border);border-radius:10px;padding:10px 14px;color:var(--text);background:#fff}.back-btn,.primary-btn,.secondary-btn,.month-nav-btn,.slot-btn,.calendar-cell{transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.back-btn,.secondary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border-radius:10px;color:var(--navy-light);font-weight:700}.back-btn:hover,.secondary-btn:hover{background:#1b3a6b14;color:var(--navy-dark)}.primary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;border-radius:12px;background:var(--gold);color:#fff;font-weight:700;box-shadow:0 10px 20px #cc96442e}.primary-btn:disabled{opacity:.65;cursor:not-allowed}.availability-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:24px;align-items:start}.calendar-panel{padding-right:18px;border-right:1px solid var(--border-soft)}.calendar-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.calendar-nav{display:inline-flex;align-items:center;gap:12px}.month-nav-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 14px;border:1px solid rgba(18,40,73,.12);border-radius:999px;background:#f7f9fc;color:var(--navy);font-weight:700}.calendar-month-label{font-size:1.1rem}.timezone-select-group{display:inline-flex;align-items:center;gap:10px}.timezone-select-group span{color:var(--navy);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-weekdays{margin-bottom:8px;color:var(--text-light);font-size:.8rem;font-weight:700;text-align:center}.calendar-cell{min-height:44px;border-radius:12px;border:1px solid transparent;background:transparent;color:#68778d;font-weight:700}.calendar-cell.available:hover{border-color:#1b3a6b38;background:#1b3a6b0f}.calendar-cell.selected{border-color:#2f5188;background:#2f51881f;color:#234777}.calendar-cell.unavailable{color:#b8c2d1;cursor:not-allowed}.calendar-cell.blank{cursor:default}.slots-panel{padding-left:8px}.slots-title{font-size:1rem;margin-bottom:8px}.hint-text{color:var(--text-light);font-size:.9rem}.slots-grid{display:block;columns:2 150px;column-gap:12px;margin-top:16px}.slot-btn{width:100%;display:block;break-inside:avoid;margin-bottom:8px;min-height:38px;padding:8px 10px;border-radius:10px;border:1px solid #2f5188;background:#fff;color:var(--navy-dark);font-weight:700}.slot-btn:hover,.slot-btn.selected{border-color:var(--gold);background:#c8952a14}.inline-loading-note{margin-bottom:12px;color:#5f6f85;font-size:.92rem;font-weight:600}.conflict-banner{margin-bottom:18px;padding:14px 16px;border-radius:12px;background:#fff8e1;color:#7a5700;border:1px solid #f6c90e;font-size:.92rem;font-weight:600}.actions-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}.review-controls{display:grid;gap:14px;margin-bottom:20px}.checkbox-row{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--navy-dark)}.checkbox-row input{width:16px;height:16px}.opportunity-editor{display:grid;gap:12px;padding:16px;border-radius:16px;background:var(--surface-soft);border:1px solid var(--border-soft)}.opportunity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.opportunity-field{display:grid;gap:8px}.opportunity-field label{color:var(--navy);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.inline-error{color:#c53030;font-size:.88rem;font-weight:600}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.summary-grid-single{grid-template-columns:1fr}.summary-card{padding:18px;border-radius:16px;background:var(--surface-soft);border:1px solid var(--border-soft)}.summary-card h3{font-size:1rem;margin-bottom:14px}.summary-line{margin-bottom:8px;line-height:1.45}.inline-choice-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.choice-pill{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border-radius:999px;border:2px solid var(--border);background:#fff;color:var(--navy-dark);font-weight:700}.choice-pill.selected{border-color:var(--gold);background:var(--gold-soft)}.missing-fields{margin-top:14px;padding:14px 16px;border-radius:12px;background:#fff5f5;border:1px solid #fed7d7;color:#c53030}.missing-fields ul{margin:8px 0 0;padding-left:18px}.success-stack{display:grid;gap:14px}.success-code{font-family:Consolas,Courier New,monospace;font-size:.88rem;color:var(--navy-dark)}@media (max-width: 860px){.availability-layout,.summary-grid,.selection-grid,.selection-grid.three-up,.opportunity-grid{grid-template-columns:1fr}.calendar-panel{border-right:none;padding-right:0}.slots-panel{padding-left:0}}@media (max-width: 640px){.widget-shell{padding:12px}.widget-header,.widget-body{padding:18px}.progress-label{display:none}.slots-grid{columns:1}.select-control,.text-control{min-width:100%}}
