.shade-match{margin:20px 0 26px;background:linear-gradient(115deg,#f4f8fc,#f8f8fc);border:1px solid #dce5ef;border-radius:22px;overflow:hidden}
.shade-match summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;cursor:pointer}
.shade-match summary::-webkit-details-marker{display:none}.shade-match summary b{font-size:20px;letter-spacing:-.025em}.shade-match summary small{display:block;margin-top:6px;font-size:14px;color:#647184;line-height:1.5}
.shade-match summary:focus-visible{outline:3px solid #0071e3;outline-offset:-4px;border-radius:22px}.match-summary-action{color:#0071e3;font-size:14px;white-space:nowrap}.match-summary-action i{display:inline-block;font-style:normal;margin-left:12px;font-size:22px;transition:transform .2s}.shade-match[open] .match-summary-action i{transform:rotate(45deg)}
.match-content{display:grid;grid-template-columns:190px minmax(0,1fr);gap:26px;padding:0 24px 26px}.match-upload{min-width:0}.match-upload img,.match-placeholder{width:100%;height:206px;object-fit:cover;border-radius:16px;background:#edf1f6}.match-placeholder{display:grid;place-items:center;background:radial-gradient(ellipse at 50% 40%,#fefefe,#e9f0f8);font-size:12px;letter-spacing:.13em;color:#607189}
.match-upload label{display:block;padding:12px;background:#fff;border:1px solid #d8e2ee;border-radius:12px;margin-top:12px;text-align:center;font-size:14px;color:#0071e3;cursor:pointer}.match-upload input{width:100%;font-size:12px;margin-top:10px}.match-upload small{display:block;margin-top:10px;font-size:12px;color:#6e6e73;line-height:1.6}
.match-controls h3,.match-results h3{font-size:23px;letter-spacing:-.035em;margin:0 0 10px;font-family:inherit;font-weight:600}.match-controls>p{font-size:15px;line-height:1.6;color:#586578;margin:10px 0}.match-controls .match-scope{font-size:13px;color:#337397}.match-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.55;margin:20px 0 10px}.match-consent input{flex-shrink:0;width:18px;height:18px;margin-top:2px}.match-privacy{display:block;color:#6e6e73;font-size:12px;line-height:1.6}
.match-actions{display:flex;gap:12px;align-items:center;margin-top:18px}.match-primary,.match-secondary{min-height:44px;padding:12px 20px;border-radius:12px;font-size:15px;font-weight:600;border:0;cursor:pointer}.match-primary{background:#0071e3;color:#fff}.match-primary:hover:not(:disabled){background:#0077ed;box-shadow:0 5px 15px #0071e321}.match-secondary{color:#526580;background:#e9eff6}.match-primary:disabled{cursor:default;opacity:.5}.match-progress{display:flex;align-items:center;gap:14px;margin-top:18px}.match-progress-track{display:block;flex:1;height:5px;background:#dbe6f1;border-radius:999px;overflow:hidden}.match-progress-track i{display:block;width:34%;height:100%;background:linear-gradient(90deg,#589de0,#8c9dcf,#65b1b8);animation:match-travel 1.7s ease-in-out infinite}.match-progress>span:last-child{font-size:13px;font-variant-numeric:tabular-nums;color:#526580}
.match-status{font-size:14px;color:#3c6770;line-height:1.55;min-height:1.4em;margin:12px 0 0}.match-status[data-error=true]{color:#a23d34}.match-results{grid-column:1/-1;border-top:1px solid #dce5ef;padding-top:24px}.match-observations{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.match-observations div{background:#ffffffa6;border-radius:12px;padding:12px}.match-observations dt{font-size:12px;color:#6e6e73;margin-bottom:6px}.match-observations dd{font-size:14px;line-height:1.5;margin:0;color:#303e50}.match-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.match-result-card{min-width:0;background:#fff;border:1px solid #dce5ef;border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px}.match-result-card:first-child{border-color:#90bde9;box-shadow:0 0 0 1px #0071e314}.match-result-card img{height:110px;width:100%;object-fit:cover;border-radius:10px}.match-result-card>small{font-size:12px;letter-spacing:.025em;color:#407999}.match-result-card strong{font-size:18px;letter-spacing:-.02em}.match-result-card p{font-size:14px;line-height:1.6;color:#626f80;margin:0}.match-result-card button{margin-top:auto;width:100%;font-size:14px;padding:12px 8px}.match-result-card .match-unavailable{font-size:12px;color:#826947}.match-caution{margin-top:20px;background:#ffffff9c;border-radius:14px;padding:18px;font-size:14px;color:#5c6571;line-height:1.6}.match-caution ul{padding-left:20px;margin:8px 0}.match-caution p{margin:8px 0 0}.advisor-badge{display:inline-flex;align-items:center;border-radius:999px;background:#eaf3ff;color:#0063b9;padding:9px 14px;font-size:13px;margin:0 0 8px}.advisor-notice{font-size:14px;color:#626f80;line-height:1.6}.match-text-button{border:0;background:transparent;color:#0071e3;font-size:14px;padding:10px 0;cursor:pointer}
.shade-match[open] .match-content{animation:match-arrive .28s ease both}.match-results:focus-visible{outline:3px solid #0071e3;outline-offset:4px;border-radius:16px}.embedded footer{display:flex}
@keyframes match-travel{from{transform:translateX(-110%)}to{transform:translateX(300%)}}
@keyframes match-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.match-content{grid-template-columns:120px minmax(0,1fr);gap:18px;padding:0 18px 20px}.shade-match summary{padding:20px}.match-summary-action{font-size:0}.match-summary-action i{font-size:22px}.match-observations{grid-template-columns:repeat(2,1fr)}.match-cards{grid-template-columns:1fr}.match-upload img,.match-placeholder{height:150px}.match-controls h3{font-size:21px}}
@media(max-width:480px){.match-content{grid-template-columns:1fr}.match-upload{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px 14px}.match-upload img,.match-placeholder{height:120px;grid-column:1;grid-row:1/4}.match-upload label,.match-upload input,.match-upload small{grid-column:2;margin:0}.match-upload input{align-self:center}.match-controls{grid-column:1}.match-actions{flex-wrap:wrap}.match-consent{font-size:14px}}
@media(prefers-reduced-motion:reduce){.shade-match *, .shade-match[open] .match-content{animation:none!important;transition:none!important}.match-progress-track i{transform:none}}
[hidden]{display:none!important}
