/* SuiteRulesCanada V28 — complete B.C. property report */
:root{--sr-burgundy:#5b1d39;--sr-berry:#96345d;--sr-blush:#fbf3f6;--sr-blush-2:#f7e9ef;--sr-ink:#272129;--sr-muted:#6d6369;--sr-line:#e5d7dd;--sr-green:#2f7751;--sr-amber:#9a631a}
.property-report-v28{max-width:1120px;margin:0 auto;background:#fff;border:1px solid var(--sr-line);border-radius:28px;box-shadow:0 18px 48px rgba(80,37,55,.08);overflow:hidden}
.property-report-v28 *{box-sizing:border-box}
.pr28-head{padding:34px 36px 20px;background:linear-gradient(180deg,#fff 0%,#fffafd 100%)}
.pr28-head .eyebrow{display:block;color:var(--sr-berry);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;margin-bottom:10px}
.pr28-head h2,.pr28-head h3{margin:0 0 10px;color:var(--sr-ink);line-height:1.08}.pr28-head h2{font-size:clamp(1.8rem,4vw,3rem)}.pr28-head h3{font-size:clamp(1.55rem,3vw,2.25rem)}
.pr28-head p{margin:0;color:var(--sr-muted);font-size:1.06rem;line-height:1.6;max-width:800px}
.pr28-form-wrap{padding:0 36px 36px}
.pr28-address-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.pr28-city-field{margin-bottom:14px}.pr28-field label{display:block;font-weight:750;color:var(--sr-ink);margin:0 0 8px;font-size:.98rem}.pr28-required{font-size:.76rem;color:var(--sr-berry);font-weight:750;margin-left:4px}
.pr28-field input,.pr28-field select{width:100%;min-height:56px;border:1.5px solid #cfc7cb;border-radius:18px;background:#fff;color:var(--sr-ink);font:inherit;font-size:1rem;padding:0 16px;outline:none}.pr28-field input:focus,.pr28-field select:focus{border-color:var(--sr-berry);box-shadow:0 0 0 4px rgba(150,52,93,.11)}
.pr28-input-wrap{position:relative}.pr28-suggestions{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;border:1px solid var(--sr-line);border-radius:16px;background:#fff;box-shadow:0 16px 36px rgba(35,25,31,.14);overflow:hidden}.pr28-suggestion{display:block;width:100%;border:0;border-bottom:1px solid #eee6e9;background:#fff;text-align:left;padding:13px 14px;cursor:pointer;color:var(--sr-ink)}.pr28-suggestion:last-child{border-bottom:0}.pr28-suggestion:hover,.pr28-suggestion:focus{background:var(--sr-blush)}.pr28-suggestion strong,.pr28-suggestion small{display:block}.pr28-suggestion small{margin-top:3px;color:var(--sr-muted)}
.pr28-primary{min-height:56px;border:0;border-radius:18px;padding:0 24px;background:var(--sr-burgundy);color:#fff;font:inherit;font-weight:800;cursor:pointer;white-space:nowrap}.pr28-primary:hover{background:#4a1830}.pr28-primary:disabled{opacity:.6;cursor:wait}
.pr28-note{margin:10px 0 0;color:var(--sr-muted);font-size:.92rem;line-height:1.45}.pr28-error{margin:14px 0 0;padding:13px 15px;border-radius:14px;background:#fff1ef;border:1px solid #e6b9b2;color:#7b2b20;font-weight:700}
.pr28-progress{margin-top:18px;padding:18px;border-radius:18px;background:var(--sr-blush);border:1px solid var(--sr-line)}.pr28-progress-title{font-weight:850;color:var(--sr-ink);margin-bottom:12px}.pr28-progress-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pr28-progress-step{display:flex;align-items:center;gap:8px;color:#80747a;font-size:.88rem;font-weight:650}.pr28-progress-dot{width:16px;height:16px;border-radius:50%;border:2px solid #c9b8c0;flex:0 0 16px}.pr28-progress-step.is-active{color:var(--sr-burgundy)}.pr28-progress-step.is-active .pr28-progress-dot{border-color:var(--sr-berry);border-top-color:transparent;animation:pr28spin .8s linear infinite}.pr28-progress-step.is-done{color:var(--sr-green)}.pr28-progress-step.is-done .pr28-progress-dot{background:var(--sr-green);border-color:var(--sr-green);box-shadow:inset 0 0 0 4px #fff}@keyframes pr28spin{to{transform:rotate(360deg)}}
.pr28-result{margin-top:22px;border:1px solid var(--sr-line);border-radius:24px;background:#fff;overflow:hidden}.pr28-result-hero{padding:26px 28px;background:linear-gradient(135deg,#fff 0%,var(--sr-blush) 100%);border-bottom:1px solid var(--sr-line)}.pr28-status{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 11px;background:#edf7f1;color:var(--sr-green);font-size:.78rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.pr28-status.warn{background:#fff4dc;color:var(--sr-amber)}.pr28-result-hero h3{margin:12px 0 6px;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.08;color:var(--sr-ink)}.pr28-result-address{margin:0;color:var(--sr-muted);font-size:1.03rem}
.pr28-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:22px 28px}.pr28-fact{background:var(--sr-blush);border-radius:16px;padding:14px 15px;min-width:0}.pr28-fact span{display:block;color:#796d73;font-size:.76rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}.pr28-fact strong{display:block;color:var(--sr-ink);font-size:1rem;line-height:1.35;overflow-wrap:anywhere}.pr28-fact small{display:block;margin-top:4px;color:var(--sr-muted);line-height:1.35}
.pr28-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 28px 22px}.pr28-panel{border:1px solid var(--sr-line);border-radius:18px;padding:18px}.pr28-panel h4{margin:0 0 8px;color:var(--sr-ink);font-size:1.08rem}.pr28-panel p{margin:0;color:var(--sr-muted);line-height:1.55}.pr28-panel strong.big{display:block;color:var(--sr-burgundy);font-size:1.45rem;line-height:1.15;margin-bottom:8px}.pr28-panel ul{margin:8px 0 0;padding-left:20px;color:var(--sr-muted)}.pr28-panel li+li{margin-top:5px}
.pr28-sources{margin:0 28px 22px;padding:17px 18px;border-radius:18px;background:#f8f8f8}.pr28-sources strong{display:block;margin-bottom:8px}.pr28-source-links{display:flex;flex-wrap:wrap;gap:8px}.pr28-source-links a{display:inline-flex;align-items:center;min-height:42px;padding:8px 11px;border:1px solid #d8d4d6;border-radius:12px;background:#fff;color:var(--sr-burgundy);font-weight:750;text-decoration:none}
.pr28-actions{display:flex;flex-wrap:wrap;gap:10px;padding:0 28px 28px}.pr28-actions .button,.pr28-actions button{min-height:48px;border-radius:14px}.pr28-secondary{border:1px solid #cfc7cb;background:#fff;color:var(--sr-ink);font:inherit;font-weight:750;padding:0 16px;cursor:pointer}.pr28-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:0 16px;background:var(--sr-burgundy);color:#fff;font-weight:800;border-radius:14px}
.pr28-manual{margin-top:18px;border:1px solid var(--sr-line);border-radius:18px;background:#fff;overflow:hidden}.pr28-manual summary{list-style:none;cursor:pointer;padding:16px 18px;background:var(--sr-blush);font-weight:850;color:var(--sr-burgundy);display:flex;justify-content:space-between;align-items:center}.pr28-manual summary::-webkit-details-marker{display:none}.pr28-manual summary:after{content:'+';font-size:1.3rem}.pr28-manual[open] summary:after{content:'−'}.pr28-manual-body{padding:18px}.pr28-manual-grid{display:grid;grid-template-columns:1.25fr .75fr 1fr;gap:12px;align-items:end}.pr28-unit-toggle{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid #cfc7cb;border-radius:16px;overflow:hidden;min-height:56px}.pr28-unit-toggle button{border:0;background:#fff;font:inherit;font-weight:800;color:var(--sr-ink)}.pr28-unit-toggle button.is-active{background:var(--sr-burgundy);color:#fff}.pr28-manual-submit{margin-top:12px;width:100%}.pr28-manual-help{margin:10px 0 0;color:var(--sr-muted);font-size:.9rem}
.pr28-demo{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px;align-items:center}.pr28-demo-copy h2{margin-top:0}.pr28-demo-frame{background:#fff;border:1px solid var(--sr-line);border-radius:24px;padding:12px;box-shadow:0 18px 48px rgba(80,37,55,.08)}.pr28-demo-frame img{display:block;width:100%;height:auto;border-radius:15px}.pr28-demo-frame figcaption{padding:10px 8px 2px;color:var(--sr-muted);font-size:.88rem}
.pr28-locality-lock{display:inline-flex;align-items:center;gap:7px;margin-top:12px;color:var(--sr-green);font-weight:750;font-size:.88rem}.pr28-locality-lock:before{content:'✓';display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#edf7f1;color:var(--sr-green)}
@media(max-width:760px){.property-report-v28{border-radius:22px}.pr28-head{padding:26px 20px 18px}.pr28-form-wrap{padding:0 20px 24px}.pr28-address-row{grid-template-columns:1fr}.pr28-primary{width:100%}.pr28-field input,.pr28-field select{font-size:16px}.pr28-progress-steps{grid-template-columns:1fr}.pr28-facts{grid-template-columns:1fr 1fr;padding:18px 20px}.pr28-report-grid{grid-template-columns:1fr;padding:0 20px 18px}.pr28-result-hero{padding:22px 20px}.pr28-sources{margin:0 20px 18px}.pr28-actions{padding:0 20px 22px}.pr28-actions>*{flex:1 1 140px}.pr28-manual-grid{grid-template-columns:1fr}.pr28-demo{grid-template-columns:1fr}.pr28-demo-copy{order:1}.pr28-demo-frame{order:2}.pr28-source-links{display:grid}.pr28-source-links a{width:100%}}
@media(max-width:420px){.pr28-facts{grid-template-columns:1fr}.pr28-head h2{font-size:1.9rem}.pr28-head h3{font-size:1.65rem}.pr28-result-hero h3{font-size:1.65rem}.pr28-form-wrap,.pr28-head{padding-left:16px;padding-right:16px}.pr28-facts,.pr28-report-grid,.pr28-actions{padding-left:16px;padding-right:16px}.pr28-sources{margin-left:16px;margin-right:16px}}
@media print{.site-header,.footer,.pr28-form-wrap,.pr28-demo,.portfolio-conversion-section{display:none!important}.property-report-v28{box-shadow:none;border:0}.pr28-result{display:block!important}.pr28-actions{display:none}}
/* V28 touch-target hardening against legacy form rules */
.property-report-v28 .pr28-field input,.property-report-v28 .pr28-field select{min-height:56px!important;height:56px!important}
.property-report-v28 .pr28-primary{min-height:56px!important}
/* Incremental approved-component preservation patch */
.pr28-professional-cta{margin:0 28px 18px;padding:24px 26px;border-radius:20px;background:var(--sr-burgundy);box-shadow:0 12px 28px rgba(91,29,57,.16)}
.pr28-professional-cta span{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:#f0c7d8}
.pr28-professional-cta strong{font-size:1.35rem;line-height:1.2;margin:5px 0;color:#fff}
.pr28-professional-cta small{font-size:.95rem;line-height:1.45;color:rgba(255,255,255,.82)}
.pr28-professional-cta .button{min-height:54px;padding:0 24px;border-radius:15px;font-weight:900}
.pr28-sources{margin:0 28px 18px;padding:22px;border:2px solid var(--sr-line);border-radius:20px;background:#fff}
.pr28-sources>strong{font-size:1.08rem;color:var(--sr-ink);margin-bottom:12px}
.pr28-source-links{gap:10px}
.pr28-source-links a{min-height:50px;padding:11px 14px;border-color:#cfbdc5;border-radius:14px;font-size:.95rem}
.property-report-v28 .suite-manual-full-v25{margin-top:22px}
.property-report-v28 .suite-manual-full-heading-v25{padding-top:0}
.property-report-v28 .suite-checker-layout{margin-bottom:0}
@media(max-width:760px){.pr28-professional-cta,.pr28-sources{margin-left:20px;margin-right:20px}.pr28-professional-cta{padding:22px 20px}.pr28-professional-cta .button{min-height:56px}}
@media(max-width:420px){.pr28-professional-cta,.pr28-sources{margin-left:16px;margin-right:16px}}
