/* v4.6: Independent calculator 6 - semantic source colours, responsive, printable. */
.brand-sonamu{display:flex!important;align-items:center;gap:10px;text-decoration:none}
.brand-sonamu .sonamu-logo{width:44px;height:44px;object-fit:contain;flex:none}
.brand-sonamu span{line-height:1.19}
.nav [aria-current="page"]{background:#fff;color:#102744}
.property-intro{margin-bottom:0}
.property-mark{flex:0 0 auto;padding:12px 16px;border-radius:12px;background:#102744;color:#fff;font-weight:900;text-align:center}
.property-mark small{display:block;font-size:11px;font-weight:600;color:#f3d994}
#results{min-height:65px}
#results .property-result-explainer{margin-bottom:15px}
.property-group{margin-bottom:15px}
.property-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.property-actions a,.property-actions button{display:inline-block;background:#102744;color:#fff;border:0;padding:7px 11px;font-size:12px;font-weight:850;border-radius:8px;text-decoration:none;cursor:pointer}
.property-actions .detail-direct{background:#be263c}
.property-actions .source-direct{background:#eef3f9;border:1px solid #b9cbd9;color:#173555}
.property-actions a:hover,.property-actions button:hover{filter:brightness(.93)}
.property-evaluation{margin-top:20px;border:2px solid #c9d8e8}
.evaluation-heading{display:flex;align-items:start;justify-content:space-between;gap:15px}
.evaluation-heading h2{font-size:22px;color:#102744;margin:0 0 5px}
.evaluation-heading p{font-size:13px;margin:0;color:#53677f}
.analysis-badge{display:inline-block;white-space:nowrap;background:#112e52;color:#fff;padding:6px 9px;font-size:11px;font-weight:800;border-radius:30px}
.evaluation-source{margin:13px 0;border-left:5px solid #123d6d;background:#edf4fc;color:#173757;padding:10px 13px;font-size:13px;border-radius:6px}
.evaluation-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.evaluation-form .field{font-size:12px;font-weight:800;color:#183656;min-width:0}
.evaluation-form input{font-size:16px;min-width:0;width:100%;height:42px;border:1px solid #aabfd5;border-radius:8px;padding:8px;background:#fff;color:#102744;box-sizing:border-box}
.evaluation-form input:focus{outline:2px solid #3570b1}
.evaluation-summary{display:flex;flex-wrap:wrap;gap:8px;padding-top:15px}
.eval-summary-card{background:#f2f6fb;border:1px solid #cbd7e5;padding:11px 15px;border-radius:9px;flex:1 1 190px}
.eval-summary-card small{display:block;color:#536b84;font-size:11px;font-weight:800}
.eval-summary-card b{color:#102744;font-size:21px;font-weight:900;display:block;line-height:1.5}
.evaluation-verdict{margin-top:12px;padding:10px 13px;background:#eaf1fa;color:#183757;border-left:4px solid #143f72;border-radius:7px;font-size:13px}.evaluation-verdict .profit{color:#08704d}.evaluation-verdict .loss{color:#b51b32}
.evaluation-cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.evaluation-case{border:1.5px solid #d4e0eb;border-radius:12px;background:#fff;overflow:hidden}
.evaluation-case .case-head{padding:9px 12px;font-weight:900;font-size:13px;background:#112e52;color:white}
.evaluation-case .case-content{padding:13px}
.evaluation-case .case-content .case-price{font-size:19px;font-weight:900;color:#173757;margin-top:3px}
.evaluation-case .case-content .case-return{font-size:20px;font-weight:900;margin-top:5px}
.evaluation-case .case-content .case-return.loss{color:#c92336}
.evaluation-case .case-content .case-return.profit{color:#066a49}
.evaluation-case .case-content small{display:block;color:#64758b;font-size:11px;margin-top:4px}
.comparison-info{margin-top:12px;background:#f5f8fb;border:1px solid #cbd7e5;border-radius:10px;padding:11px 13px;font-size:12px;color:#334e69}
.comparison-info strong{color:#102744}
.due-diligence{margin-top:12px;border:1px solid #d4e0eb;padding:11px 14px;border-radius:9px;color:#173757}
.due-diligence summary{font-weight:900;cursor:pointer}
.checkpoints{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.checkpoints span{background:#f1f5fb;border:1px solid #cdd9e7;padding:5px 8px;border-radius:6px;font-size:12px}
.due-diligence p{margin:8px 0 0;font-size:12px}
.evaluation-note{font-size:11px;color:#50647c;margin:11px 0 0;line-height:1.6}
.property-detail-page .detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.property-detail-page .property-detail-item{padding:12px}
.property-detail-page .property-detail-item dt{font-size:12px}
.property-detail-page .property-detail-item dd{font-size:17px;font-weight:900}
.property-detail-page .facts-intro{font-size:13px;color:#415872}
.property-detail-page .links{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0}
.property-detail-page .links a{background:#102744;color:#fff;font-weight:850;padding:9px 12px;text-decoration:none;border-radius:8px;font-size:12px}
.property-detail-page .links a.secondary{color:#173c6a;background:#ebf2fa;border:1px solid #aabfda}
.property-detail-page .detail-caution{font-size:12px;padding:10px 13px;background:#fff4e4;border:1px solid #dcb982;color:#55422d;border-radius:8px}
@media(max-width:950px){.head{flex-wrap:wrap}.evaluation-form{grid-template-columns:repeat(2,minmax(0,1fr))}.property-detail-page .detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.property-mark{display:none}}
@media(max-width:650px){.evaluation-heading{flex-direction:column}.analysis-badge{white-space:normal}.evaluation-cases{grid-template-columns:1fr}.evaluation-form{grid-template-columns:repeat(2,minmax(0,1fr))}.property-intro{padding:22px 16px}.property-intro h1{font-size:25px}.property-detail-page .detail-facts{grid-template-columns:1fr}.brand-sonamu .sonamu-logo{width:34px;height:34px}}
@media print{@page{size:A4 landscape;margin:9mm}header,.nav,.no-print,.property-actions,footer,#search,.section-title{display:none!important}.page{padding:0!important;max-width:none!important}.property-evaluation,.panel,.property-intro{box-shadow:none!important;break-inside:avoid}.evaluation-cases{grid-template-columns:repeat(3,1fr)}.property-evaluation *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}


/* v4.7: five independently checked market conditions; no auto-score for missing evidence */
.factor-assessment{margin-top:17px;border:2px solid #163d6a;border-radius:12px;overflow:hidden;background:#fff}
.factor-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#102744;color:#fff;padding:14px 16px}
.factor-heading h3{color:#fff;font-size:17px;line-height:1.35;font-weight:900;margin:0 0 4px}
.factor-heading p{color:#e6effb;font-size:11.5px;margin:0;line-height:1.5}
.factor-counter{flex:0 0 auto;border-radius:999px;padding:7px 10px;background:#fff;color:#102744;font-size:11px;font-weight:900}
.factor-table-wrap{width:100%;overflow-x:auto}
.factor-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:12px}
.factor-table col.factor-what{width:36%}.factor-table col.factor-how{width:16%}.factor-table col.factor-proof{width:48%}
.factor-table thead{background:#e7eef8;color:#143b69}.factor-table th,.factor-table td{border-bottom:1px solid #ccd9e8;text-align:left;padding:11px;vertical-align:middle}
.factor-table tbody tr:nth-child(even){background:#f6f9fd}
.factor-table tbody th{font-weight:850;color:#112d51;line-height:1.45}
.factor-num{display:inline-block;font-size:11px;font-weight:900;color:#fff;background:#123d6d;padding:3px 6px;border-radius:4px;margin-right:7px}
.factor-name{font-size:13px;font-weight:900}.factor-table tbody th small{display:block;font-size:11px;line-height:1.4;font-weight:550;color:#5c7187;margin:5px 0 0}
.factor-table select,.factor-table input{width:100%;box-sizing:border-box;border:1px solid #9cb5d1;border-radius:7px;background:#fff;color:#183657;font-size:12px;min-height:38px;padding:6px 8px}
.factor-table select:focus,.factor-table input:focus{outline:2px solid #1758a4;outline-offset:1px}
.factor-table .factor-evidence-cell small{display:block;font-size:10px;color:#60758b;margin-top:4px}
.factor-mobile-label{display:none}
.factor-summary{margin:12px 14px;padding:13px 14px;background:#eef3fa;border-radius:10px;border-left:5px solid #123d6d;color:#12304f;font-size:13px;line-height:1.55}
.factor-summary>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.factor-summary strong{font-size:15px}.factor-summary strong.factor-total-points{font-size:24px;color:#ab2436;font-weight:900}
.factor-summary strong.factor-total-points small{font-size:13px;color:#53677f}.factor-summary strong.factor-signal{color:#123d6d}
.factor-summary p{margin:5px 0 0;font-size:12px}.factor-summary>small{display:block;font-size:11px;color:#4f647c;margin-top:5px}
.factor-caution{margin:10px 14px 14px;font-size:11px;color:#4f637d;line-height:1.55}
.factor-print-report{display:none}
@media(max-width:700px){
  .factor-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .factor-table thead{display:none}.factor-table,.factor-table tbody,.factor-table tr,.factor-table th,.factor-table td{display:block;width:100%;box-sizing:border-box}
  .factor-table tbody tr{padding:12px;border-bottom:1px solid #b5cbe1}
  .factor-table th,.factor-table td{border:0!important;padding:5px 3px}
  .factor-table tbody th{margin-bottom:5px}
  .factor-mobile-label{display:block;font-size:11px;color:#24496e;font-weight:800;margin-bottom:4px}
  .factor-table colgroup{display:none}
}
@media print {
  .factor-assessment,.factor-assessment *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .factor-assessment{break-inside:avoid!important}
  .factor-table-wrap{display:none!important}.factor-print-report{display:block!important;padding:10px 14px}
  .factor-print-report h4{font-size:12px;margin:0 0 7px;color:#14365e}
  .factor-print-report table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:10px}
  .factor-print-report th,.factor-print-report td{text-align:left;vertical-align:top;border:1px solid #a9bfda;padding:6px;overflow-wrap:anywhere}
  .factor-print-report th{background:#e7effa;color:#132e55}
  .factor-heading{padding:8px 12px}.factor-heading h3{font-size:14px}.factor-heading p{font-size:9px}
  .factor-counter{font-size:9px;padding:4px 7px}.factor-summary{margin:6px 10px;padding:7px;font-size:11px}
  .factor-summary strong.factor-total-points{font-size:17px}
  .factor-caution{font-size:9px;margin:6px 10px}
}

/* v4.8: 6th assessment criterion — redevelopment/reconstruction prospect and official stage */
.factor-assessment .renewal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 8px}
.factor-assessment .renewal-fields label,.factor-assessment .renewal-burden-label{display:block;color:#365273;font-size:11px;font-weight:800;line-height:1.4}
.factor-assessment .renewal-fields select{display:block;margin-top:4px;width:100%;font-size:11.5px}
.factor-assessment .renewal-burden-label{margin-top:8px}
.factor-assessment .renewal-burden-label input{display:block;margin-top:4px;width:100%}
.factor-assessment .renewal-fields select:disabled,.factor-assessment .renewal-burden-label input:disabled{background:#ecf0f5;color:#687d93;cursor:not-allowed}
.factor-assessment .renewal-official-links{font-size:11px;margin:10px 14px 0;line-height:1.6;color:#234464;font-weight:650}
.factor-assessment .renewal-official-links a{color:#0f518d;text-underline-offset:2px}
@media(max-width:700px){.factor-assessment .renewal-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}}
@media(max-width:360px){.factor-assessment .renewal-fields{grid-template-columns:1fr}}
@media print{.factor-assessment .renewal-official-links{font-size:9px;margin:4px 10px}}

/* High-contrast factor table text across shared site themes */
.factor-table tbody th{background:#ecf3fb!important;color:#112d51!important}
.factor-table tbody th .factor-name{color:#112d51!important}
.factor-table tbody th small{color:#425e7b!important}
.factor-table tbody tr:nth-child(even) th{background:#e6eef9!important}
.factor-table tbody td{background:#fff!important;color:#183657!important}
.factor-table tbody tr:nth-child(even) td{background:#f6f9fd!important}
@media(max-width:700px){.factor-table tbody th,.factor-table tbody td{background:transparent!important}.factor-table tbody tr:nth-child(even) th,.factor-table tbody tr:nth-child(even) td{background:transparent!important}}

/* v4.9: integrated, read-only, source-conscious automatic evaluation */
.property-trade,.property-notice{cursor:pointer;transition:border-color .16s,box-shadow .16s}
.listing:focus-visible{outline:3px solid #1363a4;outline-offset:3px}
.property-selected{outline:3px solid #0f518d;outline-offset:2px;box-shadow:0 6px 18px rgba(9,49,93,.12)!important}
.evaluation-factors-inline{border:1px solid #bdcee0;border-radius:11px;background:#fff;overflow:hidden;margin-top:15px}
.auto-factors-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;background:#102744;color:#fff}
.auto-factors-head strong{font-size:16px;font-weight:900;color:#fff}
.auto-factors-coverage{font-size:11px;color:#102744;background:#fff;padding:6px 9px;border-radius:999px;font-weight:800;white-space:nowrap}
.auto-factors-verdict{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;padding:12px 14px;color:#123754;background:#eaf2fc}
.auto-factors-verdict strong{color:#153b69;font-size:15px}
.auto-factors-verdict span{font-size:12px}
.auto-factors-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.auto-factor-row{border-top:1px solid #d8e3ee;padding:10px 14px;min-width:0}
.auto-factor-row:nth-child(odd){border-right:1px solid #d8e3ee}
.auto-factor-row>div{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px}
.auto-factor-row b{color:#102744;font-size:13px;line-height:1.4}
.auto-factor-row p{font-size:11px;color:#53697f;line-height:1.55;margin:6px 0 0;word-break:keep-all;overflow-wrap:anywhere}
.auto-factor-status{flex:0 0 auto;font-size:10px;font-weight:900;border:1px solid #b4c6da;padding:4px 7px;border-radius:7px;background:#f0f4f8;color:#334c66}
.auto-factor-status.partial{background:#e9f4f0;border-color:#76b69e;color:#06573c}
.auto-factors-caution{padding:11px 14px;margin:0!important;border-top:1px solid #d8e3ee;font-size:10px!important;line-height:1.5;color:#4d6580}
@media(max-width:760px){
 .auto-factors-grid{grid-template-columns:1fr}
 .auto-factor-row:nth-child(odd){border-right:0}
 .auto-factors-head{flex-direction:column;align-items:flex-start}
 .auto-factors-coverage{white-space:normal}
}
@media print{
 .auto-factors-grid{grid-template-columns:repeat(2,1fr)!important}
 .auto-factor-row{padding:6px 8px!important;break-inside:avoid}
 .auto-factor-row b{font-size:10px!important}
 .auto-factor-row p{font-size:9px!important}
 .auto-factors-head{padding:7px 10px!important}
 .auto-factors-head strong{font-size:12px!important}
 .auto-factors-verdict{padding:7px 10px!important}
 .evaluation-factors-inline,.evaluation-factors-inline *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
}
