.assistant-hero{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:28px;margin-bottom:16px;padding:26px 28px;border-radius:12px;box-shadow:none}.assistant-heading h2{margin:5px 0 7px;font-size:26px;letter-spacing:-.035em}.assistant-heading p{max-width:720px;margin:0;line-height:1.55}.assistant-steps{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none}.assistant-steps li{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;font-weight:750}.assistant-steps li:not(:last-child)::after{content:"";width:28px;height:1px;margin:0 8px;background:var(--line)}.assistant-steps b{width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--muted)}.assistant-steps .active{color:var(--brand)}.assistant-steps .active b{border-color:#b7d0c5;background:#edf3ec;color:#346538}.assistant-grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:16px;margin-bottom:16px}.assistant-grid>.panel{margin:0;border-radius:12px;box-shadow:none}.assistant-profile-card{display:flex;flex-direction:column;gap:14px}.assistant-profile-card .panel-head,.assistant-profile-card p{margin:0}.assistant-consent{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start;color:var(--muted);font-size:10px;line-height:1.5}.assistant-consent input{width:17px;height:17px;accent-color:var(--brand)}.assistant-profile-summary{margin-top:2px;padding-top:15px;border-top:1px solid var(--line)}.assistant-empty{color:var(--muted);font-size:11px;line-height:1.55}.assistant-profile-summary h3{margin:0 0 8px;font-size:16px}.assistant-chip-row{display:flex;flex-wrap:wrap;gap:6px}.assistant-chip{padding:5px 8px;border-radius:999px;background:#edf3ec;color:#346538;font-size:9px;font-weight:750}.assistant-target-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.assistant-target-form .field{margin:0}.assistant-target-form .assistant-role{grid-column:1/-1}.assistant-search-button{grid-column:1/-1;justify-self:start;min-width:240px}.assistant-source-note{margin:4px 0 0;color:var(--muted);font-size:9px}.assistant-results-panel{min-height:230px;margin-bottom:16px;border-radius:12px;box-shadow:none}.assistant-activity{padding:0!important;margin-bottom:16px;border-radius:12px;box-shadow:none}.assistant-activity summary{padding:18px 22px;cursor:pointer;color:var(--brand);font-size:11px;font-weight:800}.assistant-activity .directory-jobs{padding:0 22px 18px}.directory-result{border-radius:9px}.directory-job.error{border-left:3px solid #9f2f2d;padding-left:12px}.directory-job .job-error{color:#9f2f2d}.ai-admin-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-provider-card{padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff}.ai-provider-card h3{margin:0 0 4px}.ai-provider-card .field{margin-top:12px}.ai-route-list{display:grid;gap:7px}.ai-route-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(170px,1fr) minmax(170px,1fr);gap:12px;align-items:end;padding:13px 0;border-bottom:1px solid var(--line)}.ai-route-toggle{display:flex;align-items:center;gap:10px;min-height:44px}.ai-route-toggle span{display:grid;gap:3px}.ai-route-toggle small{color:var(--muted)}.ai-route-toggle input{width:18px;height:18px;accent-color:var(--brand)}.ai-route-row .field{margin:0}.ai-route-row select{min-height:42px}
.message-assistant{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.message-assistant-panel{display:grid;gap:15px;margin-top:12px;padding:18px;border:1px solid var(--line);border-radius:10px;background:#f8faf9}.message-assistant-panel h3{margin:4px 0 5px;font-size:16px}.message-assistant-fields{display:grid;grid-template-columns:1fr minmax(150px,.45fr) minmax(140px,.4fr);gap:10px}.message-assistant-fields .field{margin:0}.message-assistant-objective{grid-column:1/-1}.message-assistant-preview{display:grid;gap:12px;padding:16px;border:1px solid #cadbd3;border-radius:9px;background:#fff}.message-assistant-preview pre{margin:0;white-space:pre-wrap;font:inherit;line-height:1.65;color:var(--ink)}.message-assistant-quality{padding:9px 11px;border-radius:8px;font-size:10px;font-weight:750}.message-assistant-quality.safe{background:#e9f4ee;color:#1d7256}.message-assistant-quality.warning{background:#fff1ed;color:#9f2f2d}.message-assistant-preview .button{justify-self:start}@media(max-width:980px){.ai-route-row{grid-template-columns:1fr}.assistant-hero{grid-template-columns:1fr auto}.assistant-steps{grid-row:2;grid-column:1/-1}.assistant-grid{grid-template-columns:1fr}.ai-admin-provider-grid{grid-template-columns:1fr}}
@media(max-width:590px){.message-assistant-fields{grid-template-columns:1fr}.message-assistant-objective{grid-column:auto}.message-assistant-panel{padding:15px}.assistant-hero{grid-template-columns:1fr;padding:20px}.assistant-hero .directory-quota{justify-self:start}.assistant-steps li span{display:none}.assistant-steps li:not(:last-child)::after{width:42px}.assistant-grid{gap:12px}.assistant-grid>.panel,.assistant-results-panel{padding:20px 16px}.assistant-target-form{grid-template-columns:1fr}.assistant-target-form .assistant-role,.assistant-search-button{grid-column:auto}.assistant-search-button{width:100%;min-width:0}.assistant-results-panel .panel-head{align-items:flex-start}.assistant-results-panel .panel-head .button{width:auto}}

/* 4-Step Application Assistant Wizard UI */
.assistant-wizard-card { max-width: 960px; margin: 0 auto 24px; padding: 32px; border-radius: 16px; background: #fff; border: 1px solid var(--line); box-shadow: 0 4px 20px rgba(0,0,0,0.03); }
.wizard-header-nav { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.wizard-stepper-bar { display: flex; align-items: center; gap: 12px; }
.wizard-step-node { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; color: var(--muted); }
.wizard-step-node b { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; border: 1.5px solid var(--line); background: #f8faf9; font-size: 12px; transition: all 0.2s ease; }
.wizard-step-node.active { color: var(--brand); }
.wizard-step-node.active b { border-color: var(--brand); background: var(--brand); color: #fff; }
.wizard-step-node.completed b { border-color: #2e7d32; background: #e8f5e9; color: #2e7d32; }
.wizard-step-divider { width: 32px; height: 2px; background: var(--line); }

.wizard-content-box { min-height: 280px; display: flex; flex-direction: column; justify-content: center; }
.wizard-loading-box { text-align: center; padding: 48px 24px; display: flex; flex-direction: column; align-items: center; gap: 16px; }
.wizard-scanner-svg { width: 84px; height: 84px; margin-bottom: 8px; }
.wizard-scanner-beam { animation: scanBeam 2s infinite ease-in-out; transform-origin: center; }
.wizard-pulse-ring { animation: pulseRing 1.8s infinite ease-in-out; }
.wizard-doc-line { animation: linePass 1.5s infinite ease-in-out; }

@keyframes scanBeam { 0%, 100% { transform: translateY(0); opacity: 0.3; } 50% { transform: translateY(30px); opacity: 1; } }
@keyframes pulseRing { 0% { transform: scale(0.95); opacity: 0.5; } 50% { transform: scale(1.05); opacity: 1; } 100% { transform: scale(0.95); opacity: 0.5; } }
@keyframes linePass { 0% { stroke-dashoffset: 40; } 100% { stroke-dashoffset: 0; } }

.wizard-profile-review { display: grid; gap: 20px; }
.wizard-fact-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.wizard-fact-chip { padding: 6px 12px; border-radius: 20px; background: #edf3ec; color: #2e7d32; font-size: 12px; font-weight: 600; }
.wizard-form-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 16px; }

.wizard-split-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 24px; margin-top: 16px; }
.wizard-contacts-column { border: 1px solid var(--line); border-radius: 12px; padding: 20px; background: #f8faf9; max-height: 480px; overflow-y: auto; }
.wizard-pitch-column { border: 1px solid var(--line); border-radius: 12px; padding: 20px; background: #fff; display: flex; flex-direction: column; gap: 14px; }
.wizard-contact-item { display: flex; align-items: start; gap: 12px; padding: 12px; border-radius: 8px; border: 1px solid var(--line); background: #fff; margin-bottom: 8px; }
.wizard-contact-item input[type="checkbox"] { margin-top: 3px; accent-color: var(--brand); }

.wizard-action-footer { display: flex; align-items: center; justify-content: space-between; margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--line); }

.wizard-upload-zone { min-height: 120px; border: 1.5px dashed #cbd6d0; border-radius: 12px; background: #f8faf9; display: grid; place-items: center; align-content: center; gap: 4px; padding: 16px; text-align: center; cursor: pointer; transition: all 0.2s ease; }
.wizard-upload-zone:hover { border-color: var(--brand); background: #f1f7f4; }
.wizard-upload-zone input[type="file"] { display: none; }

@media (max-width: 850px) {
  .wizard-header-nav { flex-direction: column; align-items: flex-start; gap: 16px; }
  .wizard-stepper-bar { width: 100%; justify-content: space-between; overflow-x: auto; }
  .wizard-form-grid { grid-template-columns: 1fr; }
  .wizard-split-layout { grid-template-columns: 1fr; gap: 16px; }
  .wizard-contacts-column { max-height: 360px; }
}

@media (max-width: 500px) {
  .assistant-wizard-card { padding: 18px 14px; }
  .wizard-step-node span { display: none; }
  .wizard-step-divider { width: 16px; }
  .wizard-action-footer { flex-direction: column-reverse; gap: 12px; align-items: stretch; }
  .wizard-action-footer .button { width: 100%; justify-content: center; }
  .wizard-action-footer > div { flex-direction: column; width: 100%; }
}

