.ou-match-map{--match-blue:#17639b;--match-paper:#f7f2df;--match-sun:#ffe48b;background:var(--match-paper);color:#241713;padding:80px 0;font-family:'DM Sans','Microsoft YaHei','PingFang SC',sans-serif}
.ou-match-map-inner{max-width:1220px;margin:0 auto;padding:0 32px}
.ou-match-map-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:32px}
.ou-match-map-heading h2{margin:0;font:700 36px/1.35 'Manrope','Microsoft YaHei','PingFang SC',sans-serif;letter-spacing:-.025em;text-wrap:balance}
.ou-match-map-heading>p{max-width:480px;margin:0 0 4px;font-size:16px;line-height:1.75;text-wrap:pretty;color:#625447}
.ou-match-map-board{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.3fr);gap:16px 32px;padding:32px 40px;background:var(--match-blue);color:var(--match-paper);border-radius:16px;overflow:hidden}
.ou-match-map-input{align-self:center;min-width:0}
.ou-match-map-example-note{font-size:14px;line-height:1.6;color:var(--match-sun);margin:0 0 16px}
.ou-match-map-conditions{display:flex;flex-direction:column;gap:8px}
.ou-match-map-condition{display:flex;align-items:center;gap:12px;min-height:64px;width:100%;padding:12px 16px;border:1px solid transparent;border-radius:8px;text-align:left;color:var(--match-paper);background:transparent;font:inherit;cursor:pointer;transition:background-color .3s cubic-bezier(.22,1,.36,1),color .3s cubic-bezier(.22,1,.36,1),border-color .3s cubic-bezier(.22,1,.36,1)}
.ou-match-map-condition>img{flex-shrink:0;filter:brightness(0) invert(1);width:24px;height:24px}
.ou-match-map-condition>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:4px}
.ou-match-map-condition strong{font-size:16px;font-weight:600;line-height:1.5}
.ou-match-map-condition>span>span{font-size:14px;line-height:1.5;color:#e5eff6}
.ou-match-map-condition-dot{width:8px;height:8px;background:#95b9d2;border-radius:50%;flex-shrink:0}
.ou-match-map-condition:hover{border-color:#a8c6db}
.ou-match-map-condition.is-active{background:var(--match-paper);color:var(--match-blue)}
.ou-match-map-condition.is-active>img{filter:none}
.ou-match-map-condition.is-active>span>span{color:#625447}
.ou-match-map-condition.is-active .ou-match-map-condition-dot{background:var(--match-blue)}
.ou-match-map-condition:focus-visible,.ou-match-map-node:focus-visible{outline:3px solid var(--match-sun);outline-offset:4px}
.ou-match-map-network{position:relative;align-self:center;width:100%;aspect-ratio:600/420;min-width:0}
.ou-match-map-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ou-match-map-curve{stroke:#90b3cd;stroke-width:1.5;stroke-linecap:round;opacity:.65;transition:stroke .3s cubic-bezier(.22,1,.36,1),stroke-width .3s cubic-bezier(.22,1,.36,1),opacity .3s cubic-bezier(.22,1,.36,1)}
.ou-match-map-curve.is-active{stroke:var(--match-sun);stroke-width:3;opacity:1}
.ou-match-map-owl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36%;max-width:192px;text-align:center;pointer-events:none}
.ou-match-map-owl img{display:block;width:100%;height:auto;object-fit:contain}
.ou-match-map-owl>span{display:inline-block;margin-top:8px;font-size:14px;line-height:1.4;color:var(--match-paper)}
.ou-match-map-node{position:absolute;left:var(--node-x);top:var(--node-y);transform:translate(-50%,-7px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;min-height:52px;min-width:96px;padding:0;background:transparent;border:0;border-radius:8px;color:var(--match-paper);font:inherit;cursor:pointer}
.ou-match-map-node>span{box-sizing:border-box;width:14px;height:14px;flex-shrink:0;background:var(--match-paper);border:3px solid #90b3cd;border-radius:50%;transition:background-color .3s cubic-bezier(.22,1,.36,1),border-color .3s cubic-bezier(.22,1,.36,1),transform .3s cubic-bezier(.22,1,.36,1)}
.ou-match-map-node strong{font-size:14px;line-height:1.5;font-weight:600;white-space:nowrap}
.ou-match-map-node.is-active>span,.ou-match-map-node:hover>span{background:var(--match-sun);border-color:var(--match-sun);transform:scale(1.2)}
.ou-match-map-node.is-active strong{color:var(--match-sun)}
.ou-match-map-panel{grid-column:1/-1;padding-top:16px;border-top:1px solid #6e9fbe;min-height:176px}
.ou-match-map-panel:focus-visible{outline:3px solid var(--match-sun);outline-offset:8px}
.ou-match-map-panel h3{margin:0 0 16px;font:600 20px/1.4 'Manrope','Microsoft YaHei','PingFang SC',sans-serif;color:var(--match-paper)}
.ou-match-map-findings{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.ou-match-map-findings p{margin:0;font-size:14px;line-height:1.75;text-wrap:pretty;color:#edf4f8}
.ou-match-map-findings strong{display:block;margin-bottom:4px;color:var(--match-sun);font-weight:600}
.ou-match-map-rule-links{display:flex;flex-wrap:wrap;gap:4px 16px;margin:16px 0 0;font-size:12px;line-height:1.7;color:#e5eff6}
.ou-match-map-rule-links a{color:var(--match-paper);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#98bbd3}
.ou-match-map-rule-links a:hover{color:var(--match-sun)}
.ou-match-map-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;margin-top:24px}
.ou-match-map-footer>div{max-width:760px;min-width:0}
.ou-match-map-footer p{font-size:14px;line-height:1.75;color:#625447;margin:0 0 8px}
.ou-match-map-sources{font-size:14px;line-height:1.75}
.ou-match-map-sources summary{display:list-item;cursor:pointer;color:var(--match-blue);text-underline-offset:4px}
.ou-match-map-sources ul{margin:12px 0;padding:0;list-style:none}
.ou-match-map-sources li{display:flex;flex-wrap:wrap;gap:8px 16px;padding:4px 0}
.ou-match-map-sources a{color:var(--match-blue);text-decoration:underline;text-underline-offset:4px}
.ou-match-map-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:12px 24px;min-height:48px;flex-shrink:0;max-width:100%;border-radius:8px;background:var(--match-blue);color:var(--match-paper);text-decoration:none;font-size:16px;line-height:1.5;font-weight:600;transition:background-color .3s cubic-bezier(.22,1,.36,1)}
.ou-match-map-cta:hover{background:#124e7c;color:var(--match-paper)}
.ou-match-map-cta svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.ou-match-map a:focus-visible,.ou-match-map-sources summary:focus-visible{outline:3px solid #241713;outline-offset:4px}
.ou-match-map-board a:focus-visible{outline-color:var(--match-sun)}
.ou-match-map.is-entering .ou-match-map-curve{stroke-dasharray:1;animation:ou-match-map-trace 1800ms cubic-bezier(.22,1,.36,1) var(--match-delay) both}
@keyframes ou-match-map-trace{from{stroke-dashoffset:1;opacity:.25}to{stroke-dashoffset:0;opacity:1}}
@media(max-width:900px){.ou-match-map-inner{padding:0 24px}.ou-match-map-heading{gap:24px}.ou-match-map-heading h2{font-size:30px}.ou-match-map-board{padding:24px;gap:16px;grid-template-columns:minmax(220px,1fr) minmax(0,1.1fr)}.ou-match-map-footer{flex-direction:column;gap:16px}.ou-match-map-condition{padding:12px}.ou-match-map-owl{width:40%}.ou-match-map-node{min-width:80px}.ou-match-map-node strong{font-size:12px}}
@media(max-width:640px){.ou-match-map{padding:48px 0}.ou-match-map-inner{padding:0 16px}.ou-match-map-heading{display:block;margin-bottom:24px}.ou-match-map-heading h2{font-size:30px;margin-bottom:16px}.ou-match-map-heading>p{font-size:14px}.ou-match-map-board{display:flex;flex-direction:column;padding:24px 16px;border-radius:12px;gap:16px}.ou-match-map-input{width:100%}.ou-match-map-conditions{gap:4px}.ou-match-map-condition{min-height:56px;padding:8px 12px}.ou-match-map-condition>span:nth-child(2){flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:4px 8px}.ou-match-map-condition strong{font-size:14px}.ou-match-map-condition>span>span{font-size:12px}.ou-match-map-network{max-width:480px;margin:0 auto}.ou-match-map-owl{width:34%}.ou-match-map-findings{grid-template-columns:1fr;gap:16px}.ou-match-map-panel{min-height:0;width:100%}.ou-match-map-panel h3{font-size:18px}.ou-match-map-rule-links{gap:4px 12px}.ou-match-map-footer{margin-top:16px}.ou-match-map-cta{width:100%;font-size:14px}.ou-match-map-example-note{margin-bottom:12px}.ou-match-map-owl>span{font-size:12px;margin-top:4px}}
@media(prefers-reduced-motion:reduce){.ou-match-map *, .ou-match-map *::before,.ou-match-map *::after{animation:none!important;transition:none!important}.ou-match-map-curve{stroke-dashoffset:0!important}}
