.buyer{max-width:none;margin:-1rem -1rem 0;padding:16px 1rem 56px;background:#f4f6f8;color:#191f28}
.discovery-ui .buyer{margin:-20px -24px 0;padding:20px 24px 56px}
.buyer-note{margin:0;padding:14px;border-radius:12px;background:#fff;color:#8b95a1;font-size:13px;line-height:1.5;word-break:keep-all}
.buyer-form,.buyer-card,.buyer-rank-card,.buyer-block{display:grid;gap:12px;padding:18px 16px;margin:0 0 12px;border:1px solid #e5e8eb;border-radius:16px;background:#fff;box-shadow:0 1px 2px rgba(25,31,40,.04)}
.buyer-form-title h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.04em}
.buyer-form-title p{margin:4px 0 0;color:#8b95a1;font-size:13px}
.buyer-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.buyer-form label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#4e5968}
.buyer-field{display:flex;align-items:center;gap:8px;height:48px;padding:0 12px;border:1px solid #e5e8eb;border-radius:10px;background:#fff}
.buyer-field:focus-within{border-color:#03c75a;box-shadow:0 0 0 3px rgba(3,199,90,.12)}
.buyer-form input{width:100%;box-sizing:border-box;border:0;padding:0;background:transparent;font:inherit;font-size:16px;font-weight:800;color:#191f28;outline:none}
.buyer-field em{flex:none;font-style:normal;color:#8b95a1;font-size:13px;font-weight:700}
.buyer-preview{margin:0;color:#03a94a;font-size:12px;font-weight:700}
.buyer-check{display:flex!important;align-items:center;gap:8px;font-size:13px;color:#4e5968}
.buyer-check input{width:auto}
.buyer-submit{height:48px;border:0;border-radius:10px;background:#03c75a;color:#fff;font-size:16px;font-weight:800;cursor:pointer}
.buyer-submit:hover{background:#02b351}
.buyer-errors{background:#fff4f2;color:#d9480f;border-radius:10px;padding:8px 12px}
.buyer-suggest{border:1px solid #e5e8eb;border-radius:10px;overflow:hidden}
.buyer-suggest button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #f2f4f6;background:#fff;padding:12px;font-weight:700}
.buyer-suggest button:last-child{border-bottom:0}
.buyer-sort{display:flex;flex-wrap:wrap;gap:8px;margin:0;align-items:center}
.buyer-list-head{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:0 0 14px}
.buyer-list-head h2{margin:0;font-size:18px;font-weight:800;letter-spacing:-.03em}
.buyer-list-head .buyer-sort{display:grid;grid-template-columns:1fr 1fr 1.35fr;width:100%;gap:8px}
.buyer-list-head .buyer-sort label{display:grid;gap:4px;min-width:0;font-size:12px;font-weight:700;color:#8b95a1;white-space:nowrap}
.buyer-list-head .buyer-sort select{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid #e5e8eb;border-radius:10px;background:#fff;font-size:13px;font-weight:700;color:#191f28}
.buyer-groups{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 12px}
.buyer-groups a{display:inline-flex;align-items:center;height:34px;padding:0 12px;border:1px solid #e5e8eb;border-radius:999px;background:#fff;color:#4e5968;font-size:13px;font-weight:700;line-height:1;text-decoration:none}
.buyer-groups a.is-on{background:#191f28;border-color:#191f28;color:#fff}
.buyer-groups a b{margin-left:4px}
.buyer-switch{display:flex;gap:8px;margin:8px 0}
.buyer-switch button{border:1px solid #e5e8eb;background:#fff;border-radius:999px;padding:8px 14px;font-weight:700;color:#4e5968}
.buyer-switch button[aria-selected="true"]{background:#191f28;color:#fff;border-color:#191f28}
.buyer-map{height:420px;border-radius:16px;overflow:hidden;background:#f4f7fb;margin-bottom:12px}
.buyer-station-pin{padding:5px 9px;border-radius:999px;background:#243044;color:#fff;font-size:12px;font-weight:800;line-height:1.2;box-shadow:0 2px 8px #20304055;white-space:nowrap}
.buyer-map .estate-apt-pin.is-on{background:#243044}
.buyer-map .estate-apt-pin.is-on::after{border-top-color:#243044}
.buyer-card,.buyer-on-detail{gap:12px}
.buyer-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.buyer-card h3,.buyer-on-detail h2,.buyer-rank-card h3{margin:0;color:#191f28;font-weight:800;letter-spacing:-.04em;word-break:keep-all}
.buyer-card h3{font-size:17px}
.buyer-meta{margin:4px 0 0;color:#8b95a1;font-size:13px;font-weight:600;line-height:1.45}
.buyer-price-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0;padding:2px 0 10px;border:0;border-bottom:1px solid #f2f4f6;border-radius:0;background:transparent}
.buyer-price-row span{color:#8b95a1;font-size:13px;font-weight:600}
.buyer-price-row strong{color:#191f28;font-size:26px;font-weight:800;letter-spacing:-.04em}
.buyer-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.buyer-metrics div{padding:12px;border:1px solid #e5e8eb;border-radius:12px;background:#f7f8fa}
.buyer-metrics dt{color:#8b95a1;font-size:12px;font-weight:700}
.buyer-metrics dd{margin:4px 0 0;color:#191f28;font-size:17px;font-weight:800;letter-spacing:-.03em}
.buyer-metrics div:last-child:nth-child(odd){grid-column:1/-1}
.buyer-metric-pay{background:#f4fbf7;border-color:#d7f0e1}
.buyer-metric-pay dd{color:#029645}
.buyer-schedule{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #d5deea;border-radius:12px;background:#fff}
.buyer-schedule caption{padding:10px 12px 0;color:#121826;font-size:13px;font-weight:800;text-align:left}
.buyer-schedule th,.buyer-schedule td{padding:10px 12px;border-top:1px solid #e6edf5;text-align:left;font-size:14px}
.buyer-schedule tr:first-child th,.buyer-schedule tr:first-child td{border-top:0}
.buyer-schedule th{width:38%;background:#f7f9fc;color:#3d4c63;font-weight:800}
.buyer-schedule td{color:#121826;font-weight:800}
.buyer-status{flex:none;margin:0;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;line-height:1.3}
.buyer-state-fit{color:#0f7a3a;background:#e8f7ee}
.buyer-state-over{color:#9a3412;background:#fff1e8}
.buyer-state-check{color:#243044;background:#eef2f7}
.buyer-reason{margin:0;padding:8px 12px;border-radius:10px;background:#f7f9fc;color:#243044;font-size:14px;font-weight:700}
.buyer-math{margin:0;padding:0;border:1px solid #f3d7c8;border-radius:12px;background:#fff8f4;color:#3d2a22}
.buyer-math summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;cursor:pointer;list-style:none}
.buyer-math summary::-webkit-details-marker{display:none}
.buyer-math summary::after{content:"";flex:none;width:7px;height:7px;border-right:2px solid #c4a394;border-bottom:2px solid #c4a394;transform:rotate(45deg);margin-top:-3px}
.buyer-math[open] summary::after{transform:rotate(225deg);margin-top:3px}
.buyer-math ul{margin:0;padding:0 14px 12px 28px;font-size:13px;font-weight:700;line-height:1.55}
.buyer-math li+li{margin-top:4px}
.buyer-math-total{margin:0;padding:0;border:0;list-style:none;font-size:16px;font-weight:800;color:#0f7a3a}
.buyer-math-total.is-short{color:#9a3412}
.buyer-math-label{display:inline-flex;align-items:center;gap:6px;min-width:0}
.buyer-omit-hint{margin:0}
.buyer-omit-hint .hint-bubble,.buyer-closing-hint .hint-bubble{width:min(280px,calc(100vw - 32px));max-width:min(280px,calc(100vw - 32px))}
.buyer-closing-hint .hint-bubble{left:auto;right:0}
.buyer-omit-hint .hint-bubble strong,.buyer-closing-hint .hint-bubble strong{display:block;font-weight:800}
.buyer-omit-hint .hint-bubble p,.buyer-closing-hint .hint-bubble p{margin:6px 0 0}
.buyer-years{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.buyer-years span{font-size:13px;font-weight:800;color:#243044}
.buyer-years button{border:1px solid #e5e8eb;background:#fff;border-radius:999px;padding:6px 10px;font:inherit;font-size:12px;font-weight:700;color:#4e5968;cursor:pointer}
.buyer-years button.is-on{background:#191f28;border-color:#191f28;color:#fff}
.buyer-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:start}
.buyer-plan{min-width:0;border:1px solid #e4ebf4;border-radius:12px;background:#fff}
.buyer-plan summary{display:grid;gap:4px;padding:10px 8px;cursor:pointer;list-style:none}
.buyer-plan summary::-webkit-details-marker{display:none}
.buyer-plan summary::after{content:"";justify-self:center;width:7px;height:7px;border-right:2px solid #8aa0b8;border-bottom:2px solid #8aa0b8;transform:rotate(45deg)}
.buyer-plan[open] summary::after{transform:rotate(225deg)}
.buyer-plan-name{color:#243044;font-size:12px;font-weight:800;line-height:1.35;word-break:keep-all}
.buyer-plan-first{color:#3d4c63;font-size:12px;font-weight:700}
.buyer-plan-first b{display:block;margin-top:2px;color:#191f28;font-size:16px;font-weight:800;letter-spacing:-.03em}
.buyer-plan dl{margin:0;padding:0 8px 10px}
.buyer-plan dl div{display:flex;justify-content:space-between;gap:6px;padding-top:6px;border-top:1px solid #e6edf5;font-size:12px;font-weight:800}
.buyer-plan dt{color:#3d4c63}
.buyer-plan dd{margin:0;color:#121826}
.buyer-pdf-form{margin:0}
.buyer-pdf-form button{display:block;width:100%;border:1px solid #e5e8eb;border-radius:10px;background:#fff;color:#191f28;padding:10px 12px;font:inherit;font-weight:700;cursor:pointer}
.buyer-gap{margin:0;padding:12px 14px;border-radius:12px;background:#e8f7ee;color:#0f7a3a;font-size:15px;font-weight:800}
.buyer-gap-short{background:#fff1e8;color:#9a3412}
.buyer-warn{display:inline-block;margin-left:6px;color:#9a3412;font-size:12px;font-weight:800}
.buyer-warn[hidden]{display:none !important}
.buyer-brief{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.buyer-brief div{padding:12px;border:1px solid #e4ebf4;border-radius:12px;background:#f7f9fc}
.buyer-brief dt{color:#3d4c63;font-size:12px;font-weight:800}
.buyer-brief dd{margin:4px 0 0;color:#121826;font-size:17px;font-weight:800;letter-spacing:-.03em}
.buyer-brief div:first-child dd{color:#191f28}
.buyer-equity{display:grid;gap:6px;margin:0;padding:12px 14px;border:1px solid #e5e8eb;border-radius:14px;background:#f7f8fa}
.buyer-equity span{display:flex;justify-content:space-between;align-items:baseline;gap:12px;color:#243044;font-size:13px;font-weight:800}
.buyer-equity strong{color:#121826;font-size:18px;font-weight:800;letter-spacing:-.03em}
.buyer-equity input{width:100%;accent-color:#03c75a;margin:2px 0}
.buyer-equity small{color:#3d4c63;font-size:12px;font-weight:700}
.buyer-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.buyer-actions form{display:contents;margin:0}
.buyer-actions button,.buyer-actions a{display:inline-flex;align-items:center;box-sizing:border-box;height:36px;margin:0;padding:0 12px;border:1px solid #e5e8eb;border-radius:8px;background:#fff;color:#191f28;font-family:inherit;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer}
.buyer-pin{border-radius:8px;padding:4px 6px;font-size:12px;font-weight:700;color:#fff}
.buyer-pin.fit{background:#157347}.buyer-pin.over{background:#b45309}.buyer-pin.check{background:#5c6d86}
.buyer-rank{margin-top:8px}
.buyer-rank h2{margin:20px 0 10px;font-size:18px;font-weight:800;letter-spacing:-.03em}
.buyer-rank-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.buyer-rank-where{margin:0 0 2px;color:#8b95a1;font-size:12px;font-weight:700}
.buyer-rank-card h3{margin:0;font-size:17px;font-weight:800;letter-spacing:-.03em}
.buyer-rank-change{flex:none;padding:4px 8px;border-radius:999px;background:#e8f8ef;color:#029645;font-size:13px;font-weight:800}
.buyer-rank-price{margin:0;color:#191f28;font-size:24px;font-weight:800;letter-spacing:-.04em}
.buyer-rank-meta{margin:0;color:#8b95a1;font-size:13px;font-weight:600}
.buyer-rank-stats{display:flex;flex-wrap:wrap;gap:6px}
.buyer-rank-stats span{padding:5px 8px;border-radius:999px;background:#f4f6f8;color:#4e5968;font-size:12px;font-weight:700}
.buyer-rank-gap{margin:0;color:#029645;font-size:13px;font-weight:800}
.buyer-rank-gap.is-short{color:#d9480f}
.buyer-rank-link{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 12px;border:1px solid #e5e8eb;border-radius:8px;color:#191f28;font-size:13px;font-weight:700;text-decoration:none}
.buyer-pages{display:flex;justify-content:center;gap:12px;margin:8px 0 16px;color:#8b95a1;font-size:13px;font-weight:700}
.buyer-pages a{color:#191f28;text-decoration:none}
@media(max-width:640px){.buyer-fields{grid-template-columns:1fr}}
@media(max-width:799px){.buyer{margin:-.8rem -.7rem 0;padding:12px .7rem 48px}.discovery-ui .buyer{margin:0 -12px 0;padding:12px 12px 48px}}
@media(min-width:800px){.buyer-switch{display:none}.buyer-map{display:block!important}[data-buyer-pane="list"]{display:block!important}}
