/* Generated from src/css/*.css by scripts/build-legacy-css.mjs. Edit chunks, then rebuild. */

:root{
  --navy:#17365D; --teal:#2A7F8E; --blue:#DCE6F1; --pale:#F4F7FB;
  --green:#E2F0D9; --greenText:#375623; --grey:#E7E6E6; --gold:#FFF2CC;
  --red:#F4CCCC; --amber:#FCE4D6; --text:#1F2937; --white:#fff; --border:#111827;
  --sold:#D9EAF7; --shadow:0 10px 30px rgba(23,54,93,.12);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:#eef3f8;color:var(--text)}
header{background:var(--navy);color:white;padding:20px 24px;position:sticky;top:0;z-index:10;box-shadow:0 3px 15px rgba(0,0,0,.18)}
header h1{margin:0;font-size:24px}
header p{margin:5px 0 0;color:#d8e7f4;font-size:13px}
nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
nav button{border:1px solid rgba(255,255,255,.35);background:transparent;color:white;padding:9px 14px;border-radius:8px;cursor:pointer;font-weight:700}
nav button.active{background:var(--teal);border-color:var(--teal)}
.nav-more{position:relative;margin-left:auto}
.nav-more-toggle{min-width:92px}
.nav-more-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);min-width:190px;background:#17365d;border:1px solid rgba(255,255,255,.28);border-radius:9px;padding:6px;box-shadow:0 12px 28px rgba(15,23,42,.28);z-index:1000}
.nav-more.open .nav-more-menu{display:grid;gap:4px}
.nav-more-menu button{width:100%;text-align:left;border-radius:6px}
.nav-more.has-active .nav-more-toggle{background:var(--teal);border-color:var(--teal)}
main{padding:22px;max-width:1900px;margin:auto}
.panel{display:none}.panel.active{display:block}
.card{background:white;border-radius:12px;box-shadow:var(--shadow);padding:18px;margin-bottom:18px}
.card h2,.card h3{margin-top:0;color:var(--navy)}
.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
input,select,textarea,button{font:inherit}
input,select,textarea{border:1px solid #aeb9c7;border-radius:7px;padding:9px;background:white}
input[type=search]{min-width:290px}
button.primary{background:var(--teal);color:white;border:0;padding:10px 14px;border-radius:8px;font-weight:700;cursor:pointer}
button.secondary{background:var(--navy);color:white;border:0;padding:10px 14px;border-radius:8px;font-weight:700;cursor:pointer}

/* v3.6 header branding, quiet save status, and global search */
.app-header-top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.app-brand{display:flex;align-items:center;gap:14px;min-width:260px}
.brand-wordmark{display:grid;gap:2px}
.brand-kicker{font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#b9d7ee}
.header-primary-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:nowrap;margin-top:14px}
.header-primary-row nav{margin-top:0;flex:1 1 auto;min-width:0}
.header-global-search{position:relative;flex:0 1 460px;width:clamp(360px,32vw,520px);min-width:320px}
.header-global-search input[type=search]{width:100%;min-width:0;border-radius:999px;border:1px solid rgba(255,255,255,.42);background:rgba(255,255,255,.96);padding:10px 16px;color:#102033;box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}
.global-search-results{display:none;position:absolute;z-index:1200;left:0;right:0;top:calc(100% + 8px);background:#ffffff;color:#102033;border:1px solid #d8e1ea;border-radius:16px;box-shadow:0 18px 44px rgba(15,23,42,.28);max-height:min(460px,70vh);overflow:auto;padding:8px}
.global-search-results.open{display:grid;gap:6px}
.global-search-result{width:100%;border:0;background:#fff;color:#102033;text-align:left;border-radius:12px;padding:10px 12px;cursor:pointer;display:grid;gap:4px}
.global-search-result:hover,.global-search-result:focus{background:#edf4fb;outline:2px solid #2a7f8e;outline-offset:1px}
.global-search-result strong{color:#17365d}.global-search-meta{font-size:12px;color:#475569}.global-search-empty{padding:12px;color:#475569;font-size:13px}
.header-save-status,.admin-mode .header-save-status{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Hotfix: polished global search */
.header-global-search::before{content:"⌕";position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:1;color:#2a7f8e;font-weight:700;pointer-events:none}
.header-global-search input[type=search]{padding-left:42px!important;border-radius:999px;border:1px solid rgba(42,127,142,.45);box-shadow:0 10px 24px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.7);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.header-global-search input[type=search]:focus{outline:0;border-color:#2a7f8e;box-shadow:0 0 0 4px rgba(42,127,142,.2),0 14px 30px rgba(15,23,42,.18)}
.global-search-results{border-radius:18px;box-shadow:0 24px 60px rgba(15,23,42,.28);backdrop-filter:blur(8px)}
.global-search-result{border:1px solid transparent}.global-search-result:hover,.global-search-result:focus{border-color:#b7d7df}
body.dark-mode .header-global-search input[type=search]{background:#0f172a;color:#f8fafc;border-color:#475569;box-shadow:0 10px 24px rgba(0,0,0,.28)}
body.dark-mode .header-global-search::before{color:#7dd3fc}

/* UX hotfix: Reapit-style compact global search and dashboard-local Proping drilldown */
.header-global-search{flex:0 0 auto!important;width:clamp(220px,22vw,280px)!important;min-width:220px!important;max-width:280px!important;position:relative!important}
.global-search-shell{position:relative;display:flex;align-items:center;width:100%}
.header-global-search::before{left:13px!important;font-size:14px}
.header-global-search input.global-search-input[type=search]{height:36px!important;min-height:36px!important;padding:8px 62px 8px 36px!important;font-size:14px;border-radius:999px;background:rgba(255,255,255,.96)}
.global-search-shortcut{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:11px;font-weight:800;color:#64748b;background:#eef4f8;border:1px solid #d8e1ea;border-radius:7px;padding:2px 5px;pointer-events:none}
.global-search-results{left:auto!important;right:0!important;width:clamp(520px,42vw,640px)!important;max-width:calc(100vw - 48px)!important;top:calc(100% + 10px)!important;padding:10px!important;border-radius:18px!important}
.header-global-search.global-search-open input.global-search-input[type=search]{border-color:#2a7f8e;box-shadow:0 0 0 3px rgba(42,127,142,.18),0 10px 24px rgba(15,23,42,.15)}
.proping-metric-drilldown{position:relative;z-index:6}
.proping-drilldown-backdrop{position:fixed;inset:0;z-index:1300;background:rgba(15,23,42,.42);display:flex;align-items:flex-start;justify-content:center;padding:92px 16px 24px}
.proping-drilldown-card{width:min(980px,calc(100vw - 32px));max-height:calc(100vh - 128px);overflow:auto;background:#fff;color:#102033;border:1px solid #d8e1ea;border-radius:18px;box-shadow:0 24px 70px rgba(15,23,42,.32);padding:18px}
.proping-drilldown-table{max-height:60vh;overflow:auto}
body.dark-mode .global-search-shortcut{background:#172338;color:#d7e3f4;border-color:#475569}
body.dark-mode .proping-drilldown-card{background:#020617;color:#f8fafc;border-color:#64748b}
button.light{background:#edf3f8;color:var(--navy);border:1px solid #b9c6d4;padding:9px 13px;border-radius:8px;font-weight:700;cursor:pointer}
button.danger{background:#9c0006;color:white;border:0;padding:9px 12px;border-radius:7px;cursor:pointer}
button:disabled{opacity:.5;cursor:not-allowed}
.table-wrap{overflow:auto;border:1px solid #9aa8b7;border-radius:9px;max-height:70vh}
table{border-collapse:collapse;width:100%;min-width:1450px;background:white}
th{position:sticky;top:0;background:var(--navy);color:white;text-align:center;padding:10px 8px;border:1px solid #000;font-size:12px;z-index:2}
td{padding:8px;border:1px solid #000;font-size:12px;vertical-align:middle}
tr.active-row td{background:var(--green);color:var(--greenText)}
tr.withdrawn-row td{background:var(--grey);color:#595959}
tr.sold-row td{background:var(--sold);color:var(--navy)}
tr.warning-row td{background:#fff7df}
td.center{text-align:center}
.marker{font-size:17px;font-weight:900;text-align:center}
.marker.m30{background:var(--gold)!important;color:#7F6000!important}
.marker.m60{background:var(--amber)!important;color:#C65911!important}
.marker.m90{background:var(--red)!important;color:#9C0006!important}
.action-select{min-width:190px;max-width:220px;font-size:12px}
.last-action{margin-top:5px;font-size:10px;font-weight:700;color:#475569;line-height:1.25}
.notes-cell{white-space:pre-wrap;min-width:280px;line-height:1.35}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;margin-bottom:18px}
.kpi{background:white;border-radius:10px;box-shadow:var(--shadow);overflow:hidden}
.kpi .label{background:var(--teal);color:white;text-align:center;padding:9px;font-weight:800;font-size:12px}
.kpi .value{text-align:center;padding:18px;font-size:25px;font-weight:900;color:var(--navy)}
.search-result{overflow:auto}
.search-result table{min-width:1200px}
.chart-card canvas{width:100%;height:380px;background:white;border-radius:8px}
.statistics-grid{display:grid;grid-template-columns:repeat(2,minmax(420px,1fr));gap:18px;margin-bottom:18px}
.statistics-grid .card{margin-bottom:0}
.statistics-grid canvas{width:100%;height:340px;background:#fff;border-radius:8px}
.chart-subtitle{font-size:12px;color:#64748b;min-height:32px;margin:0 0 8px}
.chart-insight{margin-top:8px;padding:8px 10px;background:#f4f7fb;border:1px solid #d5dee8;border-radius:7px;font-size:12px;color:#334155}
.month-table{min-width:920px}
.form-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px}
.form-grid label{font-size:12px;font-weight:700}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;margin-top:4px}
.form-grid .wide{grid-column:span 2}
.form-grid .full{grid-column:1/-1}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:center;justify-content:center;z-index:30;padding:20px}
.modal.open{display:flex}
.modal-box{background:white;border-radius:12px;padding:18px;max-width:1000px;width:100%;max-height:90vh;overflow:auto}
.small{font-size:12px;color:#64748b}
.notice{padding:12px 14px;border-radius:8px;margin-bottom:14px}
.notice.info{background:#e8f3fb;color:#174b72;border:1px solid #add2ea}
.notice.success{background:#e5f4df;color:#315b27;border:1px solid #abd09d}
.notice.warning{background:#fff3d6;color:#6b4b00;border:1px solid #e7c96c}
.notice.error{background:#fde4e4;color:#8a1111;border:1px solid #e9aaaa}
.drop-zone{border:2px dashed #7a91aa;background:var(--pale);padding:28px;border-radius:12px;text-align:center;cursor:pointer}
.drop-zone.drag{background:#e3f2f3;border-color:var(--teal)}
.drop-zone strong{color:var(--navy)}
.update-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(480px,1.6fr);gap:18px}
.update-preview table{min-width:1250px}
.badge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}
.badge.price{background:#fff0c2;color:#7a5700}
.badge.new{background:#dff3d6;color:#315b27}
.badge.sold{background:#dbeaf8;color:#17365D}
.badge.withdrawn{background:#e7e6e6;color:#595959}
.badge.milestone{background:#fce4d6;color:#9c5700}
.badge.auction{background:#e6ddfa;color:#4c2a85}
.auction-cell{min-width:128px;text-align:center}
.auction-cell .light{padding:5px 8px;font-size:10px;margin-top:4px}
.history-item{border:1px solid #d0d9e3;border-radius:8px;padding:10px;margin-bottom:8px;background:#fbfdff}
.import-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:9px;margin:12px 0}
.import-summary-card{appearance:none;border:1px solid #c6d1dc;border-radius:9px;background:#f8fafc;padding:11px;text-align:left;cursor:pointer;color:#17365d;transition:.15s}
.import-summary-card:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(23,54,93,.12)}
.import-summary-card.active{border:2px solid #17365d;background:#e8eef5;padding:10px}
.import-summary-card .summary-count{display:block;font-size:23px;font-weight:900;line-height:1.05}
.import-summary-card .summary-label{display:block;font-size:11px;font-weight:800;margin-top:4px}
.import-summary-card.new{border-left:6px solid #4f8f3a}.import-summary-card.price{border-left:6px solid #c99700}
.import-summary-card.auction{border-left:6px solid #7650b5}.import-summary-card.withdrawn{border-left:6px solid #737373}
.import-summary-card.sold{border-left:6px solid #2b6f9f}.import-summary-card.other{border-left:6px solid #b45f06}
.import-summary-table{min-width:1150px}.import-summary-table td{white-space:normal}
.import-summary-empty{padding:18px;border:1px dashed #b7c4d1;border-radius:8px;background:#f8fafc;color:#64748b}
.history-actions{margin-top:8px}
pre.raw{white-space:pre-wrap;max-height:300px;overflow:auto;background:#0f172a;color:#dbeafe;padding:12px;border-radius:8px;font-size:11px}
.first-run{display:none}
.first-run.show{display:block}
.hidden{display:none!important}
.buyer-layout{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(650px,1.7fr);gap:18px}
.buyer-form .form-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}
.buyer-form .status-options{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:9px;border:1px solid #aeb9c7;border-radius:7px;background:#fff}
.buyer-results table{min-width:1500px}
.match-badge{display:inline-block;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;white-space:nowrap}
.match-exact{background:#d9ead3;color:#274e13}.match-strong{background:#fff2cc;color:#7f6000}.match-possible{background:#d9eaf7;color:#17365d}
.match-score{font-size:18px;font-weight:900;color:#17365d}
.match-reasons{min-width:270px;white-space:normal;line-height:1.35}
.feature-known{font-weight:800;color:#375623}.feature-unknown{font-style:italic;color:#7f6000}.feature-no{color:#9c0006}
.guide-check{min-width:145px;line-height:1.3}.guide-check strong{display:block;color:#17365d}.guide-check .small{font-size:10px}
.auction-history-select,.price-history-select{min-width:190px;max-width:285px;font-size:11px}
.archive-figure{min-width:145px;line-height:1.3}.archive-figure strong{display:block;color:#17365d}.archive-figure .small{font-size:10px}
.action-stack{display:flex;gap:6px;flex-wrap:wrap;min-width:145px}
.timeline-list{position:relative;margin:12px 0;padding-left:30px}
.timeline-list:before{content:"";position:absolute;left:10px;top:4px;bottom:4px;width:2px;background:#c9d4df}
.timeline-event{position:relative;border:1px solid #d4dde6;border-radius:9px;background:#fbfdff;padding:10px 12px;margin:0 0 10px}
.timeline-event:before{content:"";position:absolute;left:-26px;top:16px;width:12px;height:12px;border-radius:50%;background:#17365d;border:3px solid #fff;box-shadow:0 0 0 1px #9fb0c2}
.timeline-event.price:before{background:#c99700}.timeline-event.auction:before{background:#7650b5}.timeline-event.status:before{background:#737373}
.timeline-event.sold:before{background:#2b6f9f}.timeline-event.prospecting:before{background:#4f8f3a}
.timeline-date{font-size:10px;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.timeline-title{font-weight:900;color:#17365d;margin:2px 0}.timeline-detail{font-size:12px;white-space:pre-wrap}

.custom-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:14px 0 18px}.stat-mini-card{border:1px solid #d8e1ea;border-radius:12px;background:#fff;padding:13px}.stat-mini-card .label{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:900;letter-spacing:.04em}.stat-mini-card .value{font-size:24px;color:#17365d;font-weight:950;margin-top:6px}.stat-mini-card .hint{font-size:11px;color:#64748b;margin-top:4px}.stats-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-bottom:18px;align-items:start}.stats-table-card{min-height:260px;width:100%;min-width:0}.stats-table-card .table-wrap{width:100%;min-width:0}.stats-table{width:100%;min-width:0;border-collapse:collapse;font-size:12px}.stats-table th,.stats-table td{border-bottom:1px solid #e5edf5;padding:8px 9px;text-align:left}.stats-table th{background:#f8fafc;color:#17365d;text-transform:uppercase;font-size:10px}.stats-table td.num,.stats-table th.num{text-align:right;font-weight:800}.stats-help{border-left:4px solid #2a7f8e;background:#f8fafc;border-radius:10px;padding:12px 14px;color:#334155;font-size:13px;line-height:1.45;margin-top:10px}.stats-action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.stat-pill{display:inline-flex;align-items:center;border-radius:999px;background:#eef6f8;color:#17365d;padding:4px 8px;font-size:11px;font-weight:900}.recent-sales-list{display:grid;gap:8px;min-width:0}.recent-sale-row{border:1px solid #e5edf5;border-radius:10px;padding:10px;background:#fff;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,.6fr);gap:8px;align-items:center;min-width:0}.recent-sale-row strong{color:#17365d}.recent-sale-row .small{text-align:right}.stats-note-muted{color:#64748b;font-size:12px;margin:6px 0 0}@media(max-width:980px){.custom-stat-grid,.stats-two-col{grid-template-columns:1fr}.recent-sale-row{grid-template-columns:1fr}.recent-sale-row .small{text-align:left}}

.statistics-filters{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:10px;align-items:end}
.statistics-filters label{margin:0}.statistics-filter-summary{margin-top:10px;font-size:12px;color:#475569}
.report-layout{display:grid;grid-template-columns:minmax(280px,.55fr) minmax(650px,1.45fr);gap:18px}
.report-search-results{max-height:620px;overflow:auto;display:grid;gap:8px}
.report-result-card{border:1px solid #ccd6e0;border-radius:9px;padding:10px;background:#fbfdff;cursor:pointer}
.report-result-card:hover{border-color:#17365d;background:#f1f5f9}.report-result-card.active{border:2px solid #17365d;background:#e8eef5;padding:9px}
.report-sheet{background:#fff;border:1px solid #cbd5df;border-radius:10px;padding:20px;min-height:450px}
.report-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:3px solid #17365d;padding-bottom:12px;margin-bottom:15px}
.report-header h2{margin:0;color:#17365d}.report-status{border-radius:999px;padding:5px 10px;font-size:11px;font-weight:900;background:#e8eef5;color:#17365d}
.report-section{margin-top:18px}.report-section h3{color:#17365d;border-bottom:1px solid #cbd5df;padding-bottom:5px;margin-bottom:9px}
.report-details{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:9px}
.report-field{background:#f7f9fb;border:1px solid #d9e1e8;border-radius:8px;padding:9px}.report-field .label{font-size:10px;color:#64748b;font-weight:800;text-transform:uppercase}.report-field .value{font-weight:800;margin-top:3px}
.report-table{min-width:760px}.report-empty{padding:35px;text-align:center;color:#64748b;border:1px dashed #b7c4d1;border-radius:8px}
.route-layout{display:grid;grid-template-columns:minmax(560px,1.35fr) minmax(300px,.65fr);gap:18px}
.route-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:10px;max-height:680px;overflow:auto}
.route-card{border:1px solid #cad5df;border-radius:10px;padding:11px;background:#fff}
.route-card.active{border-left:6px solid #4f8f3a}.route-card.withdrawn{border-left:6px solid #737373}.route-card.selected{background:#e8eef5;border-color:#17365d}
.route-card h3{font-size:14px;margin:0 0 5px;color:#17365d}.route-card .route-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.route-order{counter-reset:route;display:grid;gap:7px}.route-stop{counter-increment:route;border:1px solid #d5dee8;border-radius:8px;padding:9px;background:#fbfdff}
.route-stop:before{content:counter(route);display:inline-grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#17365d;color:#fff;font-weight:900;margin-right:8px}
.route-links{display:grid;gap:8px;margin-top:10px}.route-links a{display:block;padding:10px;border-radius:8px;background:#17365d;color:#fff;text-decoration:none;font-weight:800;text-align:center}
.protection-grid{display:grid;grid-template-columns:repeat(2,minmax(380px,1fr));gap:18px}
.backup-list{display:grid;gap:9px;max-height:520px;overflow:auto}
.backup-item{border:1px solid #ccd6e0;border-radius:9px;padding:11px;background:#fbfdff}
.backup-item.manual{border-left:6px solid #2a7f8e}.backup-item.auto{border-left:6px solid #64748b}.backup-item.cloud{border-left:6px solid #7650b5}
.backup-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.backup-title{font-weight:900;color:#17365d}.backup-meta{font-size:11px;color:#64748b;margin-top:3px}
.backup-counts{font-size:11px;color:#475569;margin-top:6px}.backup-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.status-pill{display:inline-block;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900}
.status-pill.good{background:#e2f0d9;color:#375623}.status-pill.warn{background:#fff2cc;color:#7f6000}.status-pill.bad{background:#f4cccc;color:#9c0006}.status-pill.neutral{background:#e8eef5;color:#17365d}
.cloud-auth-grid{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:10px}
.cloud-auth-grid label{font-size:12px;font-weight:700}.cloud-auth-grid input{width:100%;margin-top:4px}
.cloud-code{width:100%;min-height:420px;font:11px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;background:#0f172a;color:#dbeafe;border-radius:8px;padding:12px}
.cloud-note{font-size:12px;color:#475569;background:#f8fafc;border:1px solid #d5dee8;border-radius:8px;padding:10px}
.sync-status{white-space:pre-wrap;font-size:12px;margin-top:10px}
.home-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
.priority-list,.movement-list{display:grid;gap:10px}
.priority-item,.movement-item{border:1px solid #d5dee8;border-radius:10px;padding:11px;background:#fbfdff}
.priority-item strong,.movement-item strong{color:#17365d}
.priority-rank{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#17365d;color:#fff;font-weight:900;margin-right:8px}
.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:10px}
.search-results{display:grid;gap:10px}.result-card{border:1px solid #d8e1ea;border-radius:12px;padding:12px;background:#fbfdff;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.result-card strong{color:#17365d}
.report-sheet{background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);border:1px solid #cbd5df;border-radius:16px;padding:0;overflow:hidden;box-shadow:0 12px 28px rgba(15,23,42,.08)}
.report-cover{background:linear-gradient(135deg,#17365d 0%,#2a7f8e 100%);color:#fff;padding:22px}
.report-cover h2{font-size:28px;color:#fff;margin:0 0 6px}.report-cover .small{color:#dbeafe}
.report-content{padding:20px}
.report-status{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.35)}
.report-section h3{display:flex;align-items:center;gap:8px;border-bottom:2px solid #e2e8f0}
.report-section h3:before{content:"";display:block;width:8px;height:22px;border-radius:4px;background:#2a7f8e}
.report-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px}
.report-metric{background:#f8fafc;border:1px solid #d8e1ea;border-radius:10px;padding:10px}
.report-metric .metric-value{font-size:20px;font-weight:900;color:#17365d}.report-metric .metric-label{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:900}

.proping-report-builder{border:1px solid #d8e1ea;border-radius:14px;padding:14px;background:#fbfdff;margin-top:14px}
.proping-report-builder h3{margin-top:0;color:#17365d}.proping-report-builder .report-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:end}
.proping-report-preview{margin-top:14px;border:1px solid #d8e1ea;border-radius:12px;background:#fff;overflow:auto;max-height:720px;padding:0}
.proping-market-report{font-family:Arial,sans-serif;color:#111827;background:#fff;padding:28px;line-height:1.45}
.proping-market-report h1{font-size:30px;line-height:1.1;margin:0 0 14px;color:#000}.proping-market-report .period{font-size:18px;font-weight:800;font-style:italic;margin-bottom:24px;color:#111827}
.proping-market-report table{width:74%;margin:0 auto 28px;border-collapse:collapse;font-size:14px}.proping-market-report th,.proping-market-report td{border:1px solid #9ca3af;padding:10px;text-align:left}.proping-market-report th{background:#d9d9d9;font-weight:900}.proping-market-report td:last-child{text-align:center;font-weight:800;width:110px}
.proping-market-report h2{font-size:18px;margin:22px 0 12px;color:#000}.proping-market-report p{font-size:15px;margin:0 0 14px}.proping-market-report .report-page{break-after:page;margin-bottom:30px}.proping-market-report .detail-day{break-before:page}.proping-market-report .daily-header{border-bottom:4px solid #111;padding-bottom:8px;margin-bottom:18px}.proping-market-report .daily-header strong{font-size:20px}
.proping-market-report .change-section{margin:18px 0}.proping-market-report .change-section h3{font-size:18px;margin:0 0 10px;color:#111827}.proping-market-report .change-item{display:grid;grid-template-columns:1fr;gap:3px;margin:0 0 12px;padding:0 0 10px;border-bottom:1px solid #e5e7eb}.proping-market-report .change-item strong{font-size:15px}.proping-market-report .muted{color:#6b7280}.proping-market-report .delta-positive{color:#15803d;font-weight:800}.proping-market-report .delta-negative{color:#dc2626;font-weight:800}.proping-market-report .no-print-note{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:10px;margin-bottom:12px;color:#9a3412}

.daily-edit-input.missing-required{border:2px solid #dc2626;background:#fff7ed}.daily-edit-input,.daily-edit-select{width:100%;min-width:110px;font-size:11px;padding:6px 7px;border:1px solid #cbd5df;border-radius:7px;background:#fff;color:#061a35}
.daily-edit-input.money{min-width:105px}.daily-edit-input.address{min-width:230px}.daily-edit-input.method{min-width:190px}.daily-edit-input.agent{min-width:180px}
.daily-edit-note{font-size:11px;color:#64748b;margin-top:6px}
.agency-share-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin:8px 0 10px}
.agency-share-controls label{font-size:12px;font-weight:800;color:#17365d}
.agency-share-controls select{min-width:150px}
.agency-share-table{margin-top:10px;max-height:240px;overflow:auto;border:1px solid #d8e1ea;border-radius:10px}
.agency-share-table table{width:100%;border-collapse:collapse;font-size:12px}.agency-share-table th,.agency-share-table td{border-bottom:1px solid #e5edf5;padding:7px 9px;text-align:left}.agency-share-table th{background:#f8fafc;color:#17365d;text-transform:uppercase;font-size:10px}.agency-share-table td:last-child,.agency-share-table td:nth-child(2){text-align:right;font-weight:800}
.table-limit-note{margin:6px 0 8px;color:#64748b;font-size:12px;font-weight:700}

.dashboard-hero{display:grid;grid-template-columns:1.7fr .9fr;gap:18px;align-items:stretch;margin-bottom:18px}
.dashboard-hero-card{background:linear-gradient(135deg,#17365d,#2a7f8e);color:#fff;border-radius:18px;padding:22px;box-shadow:0 18px 45px rgba(15,23,42,.16)}
.dashboard-hero-card h2{font-size:30px;margin:0 0 8px;color:#fff}.dashboard-hero-card p{margin:0;color:#e6f1fb;font-weight:650;line-height:1.45}
.dashboard-hero-side{background:#fff;border:1px solid #d8e1ea;border-radius:18px;padding:18px;box-shadow:0 14px 38px rgba(15,23,42,.08)}
.dashboard-hero-side .label{font-size:11px;text-transform:uppercase;color:#64748b;font-weight:900;letter-spacing:.05em}.dashboard-hero-side .value{font-size:26px;font-weight:900;color:#17365d;margin-top:4px}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px;margin-bottom:18px}.dashboard-kpi{background:#fff;border:1px solid #d8e1ea;border-radius:14px;padding:15px;box-shadow:0 14px 34px rgba(15,23,42,.07)}
.dashboard-kpi .label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:900}.dashboard-kpi .value{font-size:28px;font-weight:950;color:#0f172a;margin:7px 0 2px}.dashboard-kpi .note{font-size:12px;color:#64748b;font-weight:700}
.dashboard-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:18px}.dashboard-list{display:grid;gap:9px;margin-top:10px}.dashboard-list-item{display:flex;justify-content:space-between;gap:12px;border:1px solid #e5edf5;background:#fbfdff;border-radius:10px;padding:10px 12px;align-items:flex-start}.dashboard-list-item strong{color:#17365d}.dashboard-list-item span{color:#64748b;font-size:12px;font-weight:700}.dashboard-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.dashboard-actions button{width:100%}
.dashboard-mini-table{width:100%;border-collapse:collapse;min-width:0}.dashboard-mini-table th,.dashboard-mini-table td{border-bottom:1px solid #e5edf5;padding:8px 6px;text-align:left;font-size:12px}.dashboard-mini-table th{color:#17365d;text-transform:uppercase;font-size:10px;background:#f8fafc}.dashboard-empty{border:1px dashed #b7c4d1;border-radius:10px;padding:16px;color:#64748b;background:#fbfdff;font-weight:700;margin-top:10px}
.dashboard-grid-wide{grid-template-columns:1fr 1fr}.dashboard-card-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:10px}.dashboard-card-header h3{margin:0 0 3px}.dashboard-control-row{display:flex;gap:9px;flex-wrap:wrap;align-items:end}.dashboard-control-row.compact{justify-content:flex-end}.dashboard-control-row label{font-size:11px;font-weight:900;color:#17365d;text-transform:uppercase;letter-spacing:.03em}.dashboard-control-row select{display:block;margin-top:4px;min-width:130px;padding:7px 9px;font-size:12px}.dashboard-share-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:8px 0 12px}.dashboard-share-card{border:1px solid #d8e1ea;border-radius:12px;background:#fbfdff;padding:10px}.dashboard-share-card .label{font-size:9px;text-transform:uppercase;color:#64748b;font-weight:900}.dashboard-share-card .value{font-size:22px;font-weight:950;color:#17365d;margin-top:4px}.dashboard-share-meter{height:16px;background:#e8eef5;border-radius:999px;overflow:hidden;border:1px solid #d8e1ea}.dashboard-share-fill{height:100%;background:linear-gradient(90deg,#17365d,#2a7f8e);border-radius:999px}.dashboard-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.dashboard-breakdown .bucket{border:1px solid #d8e1ea;border-radius:10px;background:#fbfdff;padding:9px}.dashboard-breakdown .bucket .count{font-size:20px;font-weight:950;color:#17365d}.dashboard-proping-list{display:grid;gap:8px;max-height:390px;overflow:auto;margin-top:10px;padding-right:3px}.dashboard-proping-item{border:1px solid #e5edf5;border-radius:10px;background:#fff;padding:10px}.dashboard-proping-item strong{color:#17365d}.dashboard-proping-item .meta{display:block;color:#64748b;font-size:12px;font-weight:700;margin-top:3px}.dashboard-proping-item .result{display:block;font-size:12px;color:#334155;margin-top:5px}
@media(max-width:1100px){.dashboard-card-header{display:block}.dashboard-control-row.compact{justify-content:flex-start;margin-top:10px}.dashboard-share-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.dashboard-hero,.dashboard-grid,.dashboard-grid-wide{grid-template-columns:1fr}.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-actions{grid-template-columns:1fr}}

@media print{.proping-report-preview{max-height:none;overflow:visible;border:0}.proping-report-builder,.proping-report-actions{display:none!important}.proping-market-report{padding:0}.proping-market-report table{width:72%}}
.sold-summary-row{cursor:pointer}.sold-summary-main{display:flex;align-items:center;justify-content:space-between;gap:14px}.sold-summary-address{font-weight:900;color:#17365d}.sold-summary-price{font-size:16px;font-weight:900;color:#2a7f8e;white-space:nowrap}.sold-detail-row{display:none;background:#fbfdff}.sold-detail-row.open{display:table-row}.sold-detail-box{padding:14px}.sold-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin-bottom:12px}.sold-detail-field{border:1px solid #d8e1ea;border-radius:8px;padding:8px;background:#fff}.sold-detail-field .label{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:900}.sold-detail-field .value{font-weight:800}
.sold-history-dropdowns{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;margin:10px 0 12px}
.history-dropdown{border:1px solid #d8e1ea;border-radius:10px;background:#fff;overflow:hidden}
.history-dropdown summary{cursor:pointer;padding:11px 12px;font-weight:900;color:#17365d;background:#f8fafc;list-style:none}
.history-dropdown summary::-webkit-details-marker{display:none}
.history-dropdown summary:after{content:"▾";float:right;color:#64748b}
.history-dropdown[open] summary:after{content:"▴"}
.history-list{display:grid;gap:7px;padding:10px}
.history-item{border:1px solid #e2e8f0;border-radius:8px;padding:8px;background:#fbfdff}
.history-item strong{color:#17365d}
.history-empty{padding:10px;color:#64748b;font-size:12px}
.compact-table{table-layout:fixed;width:100%;min-width:0}
.compact-table th,.compact-table td{font-size:11px;line-height:1.25;padding:7px 8px;vertical-align:top}
.compact-table th{white-space:normal}
.compact-table select{max-width:100%;font-size:11px;padding:6px}
.compact-title{font-size:13px;font-weight:900;color:#17365d;margin-bottom:3px}
.compact-sub{font-size:10px;color:#64748b;font-weight:700;margin-top:2px}
.compact-stack{display:grid;gap:4px}
.compact-line{display:flex;gap:5px;align-items:flex-start;flex-wrap:wrap}
.compact-label{font-size:9px;text-transform:uppercase;letter-spacing:.03em;color:#64748b;font-weight:900;min-width:48px}
.compact-value{font-size:11px;color:#162033;font-weight:700}
.compact-pill{display:inline-block;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:900;background:#e8eef5;color:#17365d}
.compact-pill.m30{background:#e2f0d9;color:#375623}.compact-pill.m60{background:#fff2cc;color:#7f6000}.compact-pill.m90{background:#f4cccc;color:#9c0006}
.compact-notes{max-height:52px;overflow:hidden;color:#334155}
.compact-actions{display:grid;gap:5px}
.compact-actions button{width:100%;padding:7px 8px;font-size:11px}
.table-wrap.compact-wrap{overflow-x:visible}
.compact-history{max-width:100%;min-width:0;overflow:hidden}
.compact-history details{max-width:100%;border:1px solid #d8e1ea;border-radius:8px;background:#fff;overflow:hidden}
.compact-history summary{cursor:pointer;padding:7px 8px;font-size:10px;font-weight:900;color:#17365d;background:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;list-style:none}
.compact-history summary::-webkit-details-marker{display:none}
.compact-history summary:after{content:"▾";float:right;color:#64748b}
.compact-history details[open] summary:after{content:"▴"}
.compact-history-body{display:grid;gap:6px;padding:7px;max-height:120px;overflow:auto;word-break:break-word;overflow-wrap:anywhere}
.compact-history-item{border:1px solid #e2e8f0;border-radius:7px;padding:6px;background:#fbfdff;font-size:10px;line-height:1.25}
.compact-history-item strong{display:block;color:#17365d;font-size:10px}
.compact-html-cell{max-width:100%;overflow:hidden;word-break:break-word;overflow-wrap:anywhere}
.compact-html-cell *{max-width:100%;white-space:normal!important;word-break:break-word;overflow-wrap:anywhere}
.compact-table td{overflow:hidden}
.compact-table col.col-marker{width:38px!important}
.compact-table th.marker-head{width:38px!important;text-align:center;font-size:10px;padding:6px 2px;white-space:nowrap}
.compact-marker-cell{text-align:center;font-weight:900;font-size:12px;vertical-align:middle!important;padding:4px 2px!important;width:38px!important;min-width:38px!important;max-width:38px!important}
.compact-marker-cell.m30{background:#e2f0d9;color:#375623}
.compact-marker-cell.m60{background:#fff2cc;color:#7f6000}
.compact-marker-cell.m90{background:#f4cccc;color:#9c0006}
.compact-marker-empty{color:#94a3b8;font-weight:800}

@media(max-width:760px){
  .table-wrap.compact-wrap{overflow-x:visible;padding-bottom:0}
  #propertyTable.compact-table,
  #withdrawnTable.compact-table{display:block;width:100%;min-width:0;table-layout:auto;border-collapse:separate}
  #propertyTable.compact-table colgroup,
  #withdrawnTable.compact-table colgroup,
  #propertyTable.compact-table thead,
  #withdrawnTable.compact-table thead{display:none}
  #propertyTable.compact-table tbody,
  #withdrawnTable.compact-table tbody,
  #propertyTable.compact-table tr,
  #withdrawnTable.compact-table tr{display:block;width:100%}
  #propertyTable.compact-table tr,
  #withdrawnTable.compact-table tr{
    background:#fff;
    border:1px solid #d8e1ea;
    border-radius:16px;
    box-shadow:0 8px 22px rgba(15,23,42,.06);
    margin:0 0 14px;
    padding:12px;
    overflow:hidden;
  }
  #propertyTable.compact-table td,
  #withdrawnTable.compact-table td{
    display:block;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    border:0!important;
    border-bottom:1px solid #eef2f6!important;
    padding:10px 0!important;
    overflow:visible;
    background:transparent!important;
  }
  #propertyTable.compact-table td:last-child,
  #withdrawnTable.compact-table td:last-child{border-bottom:0!important;padding-bottom:0!important}
  #propertyTable.compact-table td:before,
  #withdrawnTable.compact-table td:before{
    display:block;
    margin-bottom:5px;
    font-size:10px;
    line-height:1;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#64748b;
    font-weight:900;
  }

  #propertyTable.compact-table td:nth-child(1):before{content:"Property"}
  #propertyTable.compact-table td:nth-child(2):before{content:"Details"}
  #propertyTable.compact-table td:nth-child(3):before{content:"Dates / DOM"}
  #propertyTable.compact-table td:nth-child(4):before{content:"Price / Guide"}
  #propertyTable.compact-table td:nth-child(5):before{content:"Auction / Checks"}
  #propertyTable.compact-table td:nth-child(6):before{content:"30 Days"}
  #propertyTable.compact-table td:nth-child(7):before{content:"60 Days"}
  #propertyTable.compact-table td:nth-child(8):before{content:"90 Days"}
  #propertyTable.compact-table td:nth-child(9):before{content:"Status / Action"}
  #propertyTable.compact-table td:nth-child(10):before{content:"Agent / Notes"}
  #propertyTable.compact-table td:nth-child(11):before{content:"Actions"}

  #withdrawnTable.compact-table td:nth-child(1):before{content:"Property"}
  #withdrawnTable.compact-table td:nth-child(2):before{content:"Details"}
  #withdrawnTable.compact-table td:nth-child(3):before{content:"Dates / DOM"}
  #withdrawnTable.compact-table td:nth-child(4):before{content:"Price / Guide"}
  #withdrawnTable.compact-table td:nth-child(5):before{content:"History"}
  #withdrawnTable.compact-table td:nth-child(6):before{content:"Status / Action"}
  #withdrawnTable.compact-table td:nth-child(7):before{content:"Agent / Notes"}
  #withdrawnTable.compact-table td:nth-child(8):before{content:"Actions"}

  #propertyTable.compact-table .compact-marker-cell{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:54px!important;
    min-width:54px!important;
    max-width:54px!important;
    min-height:34px;
    border-radius:10px!important;
    margin-right:8px;
    padding:6px!important;
    border:1px solid #d8e1ea!important;
    font-size:13px;
  }
  #propertyTable.compact-table .compact-marker-cell:before{
    content:""!important;
    display:none!important;
  }
  .compact-title{font-size:16px;line-height:1.2}
  .compact-sub{font-size:12px;line-height:1.35}
  .compact-line{display:grid;grid-template-columns:86px 1fr;gap:8px;align-items:start}
  .compact-label{font-size:10px;min-width:0}
  .compact-value{font-size:13px;line-height:1.35}
  .compact-notes{max-height:none;font-size:13px;line-height:1.4}
  .compact-actions{grid-template-columns:repeat(3,1fr)}
  .compact-actions button{font-size:12px;padding:9px 8px}
  .compact-history summary{font-size:12px;padding:10px}
  .compact-history-body{max-height:180px}
  .compact-history-item{font-size:12px;padding:8px}
  .compact-table select{font-size:13px;padding:10px}
}



@media(max-width:1150px){.compact-table th,.compact-table td{font-size:10px;padding:6px}.compact-title{font-size:12px}.compact-label{min-width:42px}.compact-actions button{font-size:10px;padding:6px}}

@media(max-width:720px){
  body{font-size:14px}
  header{padding:18px 14px 14px}
  header h1{font-size:30px;line-height:1.05}
  header p{font-size:17px}
  nav{gap:8px}
  nav button{font-size:15px;padding:10px 12px;border-radius:10px}
  .card{padding:13px;border-radius:14px}
  .toolbar{gap:8px}
  .toolbar button,.toolbar input,.toolbar select{width:100%}
  button{min-height:44px}
  .home-grid,.statistics-grid,.protection-grid{grid-template-columns:1fr}
  .report-layout,.route-layout,.buyer-layout,.update-layout{grid-template-columns:1fr}
  .report-details,.report-metric-grid,.sold-detail-grid{grid-template-columns:1fr 1fr}
  .report-cover{padding:18px}.report-cover h2{font-size:23px}
  .report-content{padding:14px}
  .table-wrap{border-radius:12px}
  th,td{padding:8px;font-size:12px}
  .sold-summary-main{align-items:flex-start;flex-direction:column}
  .sold-summary-price{font-size:18px}.sold-history-dropdowns{grid-template-columns:1fr}
  .quick-actions{grid-template-columns:1fr}
}
@media(max-width:460px){
  .report-details,.report-metric-grid,.sold-detail-grid{grid-template-columns:1fr}
  .kpis{grid-template-columns:1fr}
} 
@media print{.report-controls,.report-selector,header,nav{display:none!important}.report-layout{display:block}.report-sheet{border:0;padding:0}.report-sheet button{display:none!important}}

/* Active listing age colours */
.active-age-legend{display:flex;justify-content:flex-end;gap:10px;align-items:center;padding:8px 0;font-size:12px;font-weight:800;color:#17365d}
.active-age-legend span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.active-age-legend i{display:inline-block;width:16px;height:16px;border-radius:999px;border:1px solid rgba(15,23,42,.25)}
tr.active-row.active-age-30 td,.active-age-legend .active-age-30{background:#fff2cc!important;color:#5f4700!important}
tr.active-row.active-age-60 td,.active-age-legend .active-age-60{background:#fce4d6!important;color:#8a3f00!important}
tr.active-row.active-age-90 td,.active-age-legend .active-age-90{background:#f4cccc!important;color:#7f0000!important}
body.dark-mode .active-age-legend{color:#e5edf5}
body.dark-mode tr.active-row.active-age-30 td{background:#5a4300!important;color:#fff7d6!important}
body.dark-mode tr.active-row.active-age-60 td{background:#6b2f00!important;color:#ffe7d6!important}
body.dark-mode tr.active-row.active-age-90 td{background:#6f1010!important;color:#ffe2e2!important}
@media(max-width:768px){.active-age-legend{justify-content:flex-start;flex-wrap:wrap;font-size:11px}}
@media(max-width:1050px){
  nav{overflow:visible}.nav-more{margin-left:0}.nav-more-menu{left:0;right:auto}
  main{padding:10px}.kpis{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr 1fr}.update-layout{grid-template-columns:1fr}.buyer-layout{grid-template-columns:1fr}.statistics-grid{grid-template-columns:1fr}.import-summary-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.statistics-filters{grid-template-columns:repeat(2,minmax(130px,1fr))}.report-layout,.route-layout,.protection-grid{grid-template-columns:1fr}.report-details{grid-template-columns:repeat(2,minmax(120px,1fr))}.cloud-auth-grid{grid-template-columns:1fr}
}

.auth-gate{position:fixed;inset:0;z-index:9999;background:linear-gradient(135deg,#07111f 0%,#17365d 56%,#0f172a 100%);display:flex;align-items:center;justify-content:center;padding:22px}
.auth-card{width:min(460px,100%);background:#fff;border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.35);padding:28px}
.auth-card h1{margin:0 0 8px;color:#17365d;font-size:26px}.auth-card p{color:#64748b;margin:0 0 18px}
.auth-card input{width:100%;margin:7px 0;padding:13px 14px;border:1px solid #d8e1ea;border-radius:12px;font-size:15px}
.auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.auth-message{margin-top:12px;color:#9c0006;font-weight:700;font-size:13px;min-height:18px}
.user-bar{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:12px;color:#dbeafe}.user-badge{border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:6px 10px;background:rgba(255,255,255,.08)}
.locked-tab{display:none!important}.permission-warning{border:1px solid #fde68a;background:#fffbeb;color:#92400e;border-radius:12px;padding:12px;margin:10px 0;font-weight:700}
.admin-grid{display:grid;grid-template-columns:280px 1fr;gap:14px}.user-list{display:grid;gap:8px;max-height:680px;overflow:auto}
.user-row{border:1px solid #d8e1ea;border-radius:12px;padding:10px;background:#fff;cursor:pointer}.user-row.active{border-color:#17365d;box-shadow:0 0 0 2px rgba(23,54,93,.12)}
.user-row strong{display:block;color:#17365d}.user-row span{display:block;font-size:12px;color:#64748b}
.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.permission-check{display:flex;align-items:center;gap:8px;border:1px solid #d8e1ea;border-radius:10px;padding:9px;background:#fff;font-size:13px}
.permission-check input{width:auto!important}.admin-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.admin-form-grid label{font-size:12px;color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.admin-form-grid input,.admin-form-grid select{width:100%;margin-top:5px}
.security-hidden{display:none!important}button[disabled]{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.admin-grid{grid-template-columns:1fr}.auth-actions{grid-template-columns:1fr}.user-bar{width:100%;justify-content:space-between;margin-left:0;margin-top:8px}}


/* v3.3 user-friendly style refresh */
:root{
  --ux-bg:#f6f8fb;
  --ux-card:#ffffff;
  --ux-ink:#102033;
  --ux-muted:#64748b;
  --ux-line:#dbe4ee;
  --ux-brand:#17365d;
  --ux-brand-2:#245985;
  --ux-soft:#edf4fb;
  --ux-success:#0f766e;
  --ux-warning:#b45309;
  --ux-danger:#b42318;
}
body{
  background:
    radial-gradient(circle at top left, rgba(36,89,133,.12), transparent 34rem),
    linear-gradient(180deg,#f8fafc 0%,#eef3f8 100%)!important;
  color:var(--ux-ink)!important;
}
header{
  background:linear-gradient(135deg,#102033 0%,#17365d 52%,#245985 100%)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 16px 48px rgba(15,23,42,.18)!important;
}
header h1, header .subtitle{letter-spacing:-.02em}
nav{
  gap:8px!important;
  padding:8px!important;
}
nav button,.nav-more-toggle{
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.08)!important;
  color:#e6eef7!important;
  transition:transform .12s ease, background .12s ease, box-shadow .12s ease!important;
}
nav button:hover,.nav-more-toggle:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.15)!important;
}
nav button.active,.nav-more-toggle.has-active{
  background:#fff!important;
  color:#17365d!important;
  box-shadow:0 10px 30px rgba(0,0,0,.14)!important;
}
main{
  max-width:1480px!important;
  padding:22px!important;
}
.card{
  border:1px solid var(--ux-line)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 12px 36px rgba(15,23,42,.07)!important;
}
.card h2,.card h3{
  color:#17365d!important;
  letter-spacing:-.025em!important;
}
.toolbar{
  gap:10px!important;
  align-items:center!important;
}
input,select,textarea{
  border:1px solid var(--ux-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  transition:border-color .12s ease, box-shadow .12s ease!important;
}
input:focus,select:focus,textarea:focus{
  outline:none!important;
  border-color:#245985!important;
  box-shadow:0 0 0 4px rgba(36,89,133,.12)!important;
}
button{
  border-radius:12px!important;
  font-weight:800!important;
}
button.primary{
  background:linear-gradient(135deg,#17365d,#245985)!important;
  box-shadow:0 10px 22px rgba(23,54,93,.18)!important;
}
button.secondary,button.light{
  border:1px solid var(--ux-line)!important;
  background:#fff!important;
  color:#17365d!important;
}
button.danger{
  background:#fff1f2!important;
  color:var(--ux-danger)!important;
  border:1px solid #fecdd3!important;
}
.kpi{
  border-radius:18px!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
  border:1px solid var(--ux-line)!important;
}
.kpi .label{color:var(--ux-muted)!important}
.kpi .value{color:#17365d!important}
.table-wrap{
  border-radius:18px!important;
  border:1px solid var(--ux-line)!important;
  overflow:auto!important;
  background:#fff!important;
}
table{
  border-collapse:separate!important;
  border-spacing:0!important;
}
th{
  background:#f1f6fb!important;
  color:#17365d!important;
  font-size:11px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  position:sticky!important;
  top:0!important;
  z-index:3!important;
}
td{
  border-bottom:1px solid #edf2f7!important;
}
tr:hover td{
  background:#fbfdff!important;
}
.compact-title{font-size:14px!important;color:#102033!important}
.compact-sub,.small{color:#64748b!important}
.compact-pill{
  border-radius:999px!important;
  background:#eef6ff!important;
  border:1px solid #d7e8fb!important;
  color:#17365d!important;
}
.notes-details{
  max-width:340px;
}
.notes-details summary{
  cursor:pointer;
  color:#17365d;
  font-weight:800;
  list-style:none;
}
.notes-details summary::-webkit-details-marker{display:none}
.notes-details summary:after{
  content:" +";
  color:#64748b;
}
.notes-details[open] summary:after{
  content:" −";
}
.notes-body{
  margin-top:8px;
  max-height:220px;
  overflow:auto;
  white-space:pre-wrap;
  color:#334155;
  line-height:1.45;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px;
  background:#f8fafc;
}
.save-status-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.12);
  color:#dbeafe;
  font-size:12px;
  font-weight:800;
}


/* v3.3.1 readability, dark mode, autosave and mobile fixes */
.user-bar{
  flex-wrap:wrap!important;
}
.theme-toggle{
  padding:6px 10px!important;
  min-height:32px!important;
}
.kpis{
  gap:12px!important;
}
.kpi,
.report-kpi,
.stat-card,
.summary-card,
.report-box,
.metric-card{
  background:#ffffff!important;
  color:#102033!important;
  border:1px solid #dbe4ee!important;
}
.kpi .label,
.report-kpi .label,
.stat-card .label,
.summary-card .label,
.metric-card .label{
  color:#52657a!important;
  font-weight:900!important;
}
.kpi .value,
.report-kpi .value,
.stat-card .value,
.summary-card .value,
.metric-card .value{
  color:#102033!important;
  text-shadow:none!important;
  font-weight:900!important;
}
.report-layout,
.report-layout *,
.reports,
.reports *,
.report-output,
.report-output *,
#reportOutput,
#reportOutput *,
#statistics,
#statistics *{
  text-shadow:none!important;
}
.report-selector,
.report-preview,
.report-card,
.report-section,
.report-empty,
.notice,
.result-card{
  background:#ffffff!important;
  color:#102033!important;
  border-color:#dbe4ee!important;
}
.report-selector .small,
.report-preview .small,
.report-card .small,
.report-section .small,
.notice .small,
.result-card .small{
  color:#52657a!important;
}
.compact-table select,
.compact-table .action-select,
.active-row select,
.withdrawn-row select{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  font-size:11px!important;
  line-height:1.2!important;
  padding:7px 8px!important;
  white-space:normal!important;
}
.compact-table td{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}
.compact-table .compact-stack{
  min-width:0!important;
}
.compact-table .compact-actions{
  min-width:0!important;
  display:grid!important;
  gap:6px!important;
}
.compact-table .compact-actions button{
  width:100%!important;
  padding:7px 8px!important;
}
.last-action{
  color:#52657a!important;
  font-size:10px!important;
  line-height:1.25!important;
}
.sold-table-wrap{
  overflow:visible!important;
}
#soldTable{
  width:100%!important;
  min-width:0!important;
}
#soldTable .sold-summary-main{
  min-width:0!important;
}
#soldTable .sold-summary-address{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.notes-details{
  width:100%!important;
  max-width:100%!important;
}
.notes-body{
  color:#102033!important;
  background:#f8fafc!important;
  border-color:#dbe4ee!important;
}

.agency-discovery-page,.agency-discovery-page *,.agency-discovery-layout,.agency-discovery-layout *{box-sizing:border-box}
.agency-discovery-page,.agency-discovery-layout{max-width:100%;min-width:0;overflow:visible}
.agency-discovery-layout{display:flex;flex-direction:column;gap:16px}
.agency-discovery-page .card,.agency-discovery-layout .card,.agency-step-card{max-width:100%;min-width:0;overflow:visible}
.agency-discovery-page input,.agency-discovery-page select,.agency-discovery-page textarea,.agency-discovery-layout input,.agency-discovery-layout select,.agency-discovery-layout textarea{box-sizing:border-box;max-width:100%;width:100%;min-width:0}
.agency-discovery-page button,.agency-discovery-layout button{max-width:100%;white-space:normal;position:relative;z-index:1}
.agency-discovery-layout .card textarea{width:100%;box-sizing:border-box;margin-top:10px}
.agency-source-list,.agency-source-row,.agency-source-summary,.agency-source-main,.agency-source-meta,.agency-source-editor,.discovery-item{min-width:0;max-width:100%;overflow-wrap:anywhere}
.agency-source-row,.discovery-item{border:1px solid var(--border);border-radius:14px;padding:12px;margin:10px 0;background:var(--card-bg);overflow:visible}
.agency-source-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.35fr) auto;gap:12px;align-items:start}
.agency-source-main{display:flex;flex-direction:column;gap:6px}
.agency-source-meta{display:flex;flex-direction:column;gap:8px}
.agency-source-actions,.source-actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0;max-width:100%;align-items:center}
.agency-source-editor{border:1px solid var(--border);border-radius:14px;background:var(--muted-bg);padding:12px;margin:12px 0;overflow:visible}
.agency-source-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;min-width:0;max-width:100%}
.agency-source-grid .wide{grid-column:1/-1}
.source-chip-list,.discovery-suburb-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;min-width:0;max-width:100%}
.source-chip,.suburb-chip{display:inline-flex;border:1px solid var(--border);background:var(--muted-bg);border-radius:999px;padding:3px 8px;font-size:12px;max-width:100%;overflow-wrap:anywhere}
.agency-source-editor .source-chip,.agency-source-row .source-chip{background:var(--card-bg)}
.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;background:var(--muted-bg);font-size:12px;font-weight:700;white-space:normal;max-width:100%}
.discovery-item h4{margin:0 0 4px}.discovery-item pre{white-space:pre-wrap;background:var(--muted-bg);border-radius:10px;padding:10px;max-height:220px;overflow:auto}
.discovery-suburb-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;max-width:100%;min-width:0;margin:8px 0 10px;overflow:visible}
.discovery-suburb-option{display:flex;align-items:center;gap:8px;min-width:0;margin:0;padding:7px 9px;border:1px solid var(--border);border-radius:10px;background:var(--card-bg);overflow-wrap:anywhere}
.discovery-suburb-option input{width:auto!important;min-width:auto!important;flex:0 0 auto}.discovery-suburb-option span{min-width:0}
.suburb-editor-card{border:1px solid var(--border);border-radius:12px;background:var(--muted-bg);padding:10px;margin:8px 0;max-width:100%;overflow:visible}
.compact-suburb-control{border:1px solid var(--border);border-radius:12px;padding:10px;min-width:0;max-width:100%}
.url-cell{max-width:100%;white-space:normal;overflow-wrap:anywhere}.agency-source-edit-status{margin:6px 0;color:var(--muted)}.agency-source-edit-status.warning{color:#b45309;font-weight:700}
.field-label{font-weight:700;margin-bottom:6px}.warning-text{color:#b45309;font-weight:700}.success-text{color:#15803d;font-weight:700}.source-check-checking{background:#dbeafe}.source-check-completed{background:#dcfce7}.source-check-failed,.source-check-skipped{background:#fee2e2}.manual-import-card{opacity:.96}.large-action{font-size:16px;padding:12px 18px}.discovery-run-status ul{margin:6px 0 0 18px;padding:0}.table-wrap{max-width:100%;overflow-x:auto}
@media(max-width:900px){.agency-source-summary{grid-template-columns:1fr}.agency-source-actions{justify-content:flex-start}.agency-source-grid{grid-template-columns:1fr}.discovery-suburb-checkboxes{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}}
@media(max-width:520px){.discovery-suburb-checkboxes{grid-template-columns:1fr}.agency-discovery-layout{gap:12px}.agency-source-row,.agency-source-editor{padding:10px}}
body.dark-mode{
  background:
    radial-gradient(circle at top left, rgba(64,124,184,.22), transparent 34rem),
    linear-gradient(180deg,#07111f 0%,#0f172a 100%)!important;
  color:#e5edf7!important;
}
body.dark-mode header{
  background:linear-gradient(135deg,#020617 0%,#0f172a 55%,#17365d 100%)!important;
}
body.dark-mode main,
body.dark-mode .panel{
  color:#e5edf7!important;
}
body.dark-mode .card,
body.dark-mode .auth-card,
body.dark-mode .kpi,
body.dark-mode .report-kpi,
body.dark-mode .stat-card,
body.dark-mode .summary-card,
body.dark-mode .report-box,
body.dark-mode .metric-card,
body.dark-mode .report-selector,
body.dark-mode .report-preview,
body.dark-mode .report-card,
body.dark-mode .report-section,
body.dark-mode .report-empty,
body.dark-mode .notice,
body.dark-mode .result-card,
body.dark-mode .table-wrap{
  background:#111c2e!important;
  color:#e5edf7!important;
  border-color:#26364f!important;
  box-shadow:0 12px 36px rgba(0,0,0,.28)!important;
}
body.dark-mode .card h2,
body.dark-mode .card h3,
body.dark-mode .compact-title,
body.dark-mode .kpi .value,
body.dark-mode .report-kpi .value,
body.dark-mode .stat-card .value,
body.dark-mode .summary-card .value,
body.dark-mode .metric-card .value{
  color:#f8fbff!important;
}
body.dark-mode .small,
body.dark-mode .compact-sub,
body.dark-mode .kpi .label,
body.dark-mode .report-kpi .label,
body.dark-mode .stat-card .label,
body.dark-mode .summary-card .label,
body.dark-mode .metric-card .label,
body.dark-mode .last-action{
  color:#b8c7da!important;
}
body.dark-mode input,
body.dark-mode select,
body.dark-mode textarea{
  background:#0b1220!important;
  color:#e5edf7!important;
  border-color:#334155!important;
}
body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder{
  color:#94a3b8!important;
}
body.dark-mode button.secondary,
body.dark-mode button.light,
body.dark-mode .theme-toggle{
  background:#172338!important;
  color:#e5edf7!important;
  border-color:#334155!important;
}
body.dark-mode th{
  background:#172338!important;
  color:#e5edf7!important;
}
body.dark-mode td{
  border-bottom-color:#26364f!important;
}
body.dark-mode tr:hover td{
  background:#132033!important;
}
body.dark-mode .compact-pill{
  background:#172b43!important;
  color:#cfe6ff!important;
  border-color:#295174!important;
}
body.dark-mode .notes-body{
  background:#0b1220!important;
  color:#e5edf7!important;
  border-color:#334155!important;
}
body.dark-mode .permission-check,
body.dark-mode .user-row{
  background:#0b1220!important;
  color:#e5edf7!important;
  border-color:#334155!important;
}
body.dark-mode .permission-warning{
  background:#2a1f08!important;
  color:#fde68a!important;
  border-color:#92400e!important;
}
@media(max-width:760px){
  .toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }
  .toolbar input,
  .toolbar select,
  .toolbar button{
    width:100%!important;
    min-width:0!important;
  }
  .sold-table-wrap{
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
  }
  #soldTable,
  #soldTable thead,
  #soldTable tbody,
  #soldTable tr,
  #soldTable td{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  #soldTable thead{
    display:none!important;
  }
  #soldTable tr{
    margin:0 0 12px!important;
    border:1px solid #dbe4ee!important;
    border-radius:16px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 8px 24px rgba(15,23,42,.06)!important;
  }
  #soldTable td{
    border-bottom:1px solid #edf2f7!important;
    padding:12px!important;
  }
  #soldTable td:last-child{
    border-bottom:0!important;
  }
  #soldTable .sold-summary-row td:nth-child(2)::before{
    content:"Sold price";
    display:block;
    color:#52657a;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.05em;
    margin-bottom:4px;
  }
  #soldTable .sold-summary-row td:nth-child(3)::before{
    content:"Sold date";
    display:block;
    color:#52657a;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.05em;
    margin-bottom:4px;
  }
  #soldTable .sold-summary-row td:nth-child(4){
    text-align:left!important;
  }
  #soldTable .sold-summary-row td:nth-child(4) button{
    width:100%!important;
  }
  #soldTable .sold-detail-row{
    margin-top:-8px!important;
  }
  #soldTable .sold-detail-row:not(.open){
    display:none!important;
  }
  body.dark-mode #soldTable tr{
    background:#111c2e!important;
    border-color:#26364f!important;
  }
  body.dark-mode #soldTable td{
    border-bottom-color:#26364f!important;
  }
}


/* v3.3.2 contrast, dark mode and layout repairs */
header{
  position:relative!important;
  padding-right:360px!important;
  min-height:112px!important;
}
.user-bar{
  position:absolute!important;
  top:16px!important;
  right:22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  max-width:min(520px,calc(100vw - 44px))!important;
  z-index:20!important;
}
.user-badge{
  color:#ffffff!important;
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.28)!important;
  white-space:nowrap!important;
}
.theme-toggle{
  width:38px!important;
  height:38px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  font-size:18px!important;
  background:#ffffff!important;
  color:#102033!important;
  border:1px solid rgba(255,255,255,.45)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.16)!important;
}
.save-status-pill{
  white-space:nowrap!important;
  color:#ffffff!important;
}
.kpi{
  background:#ffffff!important;
  color:#102033!important;
  overflow:hidden!important;
  padding:0!important;
}
.kpi .label{
  display:block!important;
  background:linear-gradient(135deg,#167c88,#245985)!important;
  color:#ffffff!important;
  padding:10px 12px!important;
  margin:0!important;
  text-align:center!important;
  font-size:11px!important;
  letter-spacing:.04em!important;
}
.kpi .value{
  color:#020617!important;
  background:#ffffff!important;
  padding:18px 12px 20px!important;
  margin:0!important;
  text-align:center!important;
  text-shadow:none!important;
}
.report-cover .report-header,
.report-header{
  background:linear-gradient(135deg,#17365d,#167c88)!important;
  color:#ffffff!important;
}
.report-cover .report-header *,
.report-header *{
  color:#ffffff!important;
  text-shadow:none!important;
}
.report-cover .report-header .small,
.report-header .small{
  color:#dbeafe!important;
}
.report-section,
.report-card,
.report-preview,
.report-output,
#reportOutput,
#reportOutput .value,
#reportOutput .label{
  color:#102033!important;
}
.compact-wrap{
  border:1px solid #0f172a!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#ffffff!important;
}
.compact-wrap table{
  border-collapse:separate!important;
  border-spacing:0!important;
}
.compact-wrap th:first-child{border-top-left-radius:16px!important}
.compact-wrap th:last-child{border-top-right-radius:16px!important}
.compact-wrap tr:last-child td:first-child{border-bottom-left-radius:16px!important}
.compact-wrap tr:last-child td:last-child{border-bottom-right-radius:16px!important}
.compact-table th,
.compact-table td{
  border-color:#0f172a!important;
}
.compact-table .compact-notes,
.compact-table .notes-details summary{
  color:#102033!important;
}
body.dark-mode{
  background:#07111f!important;
  color:#e5edf7!important;
}
body.dark-mode header{
  background:linear-gradient(135deg,#020617,#0f172a 62%,#164e63)!important;
}
body.dark-mode .theme-toggle{
  background:#f8fafc!important;
  color:#020617!important;
}
body.dark-mode .card,
body.dark-mode .table-wrap,
body.dark-mode .compact-wrap,
body.dark-mode .report-section,
body.dark-mode .report-card,
body.dark-mode .report-preview,
body.dark-mode #reportOutput,
body.dark-mode .result-card,
body.dark-mode .notice,
body.dark-mode .permission-check,
body.dark-mode .user-row{
  background:#0f172a!important;
  color:#e5edf7!important;
  border-color:#334155!important;
}
body.dark-mode table,
body.dark-mode tbody,
body.dark-mode tr,
body.dark-mode td{
  background:#0f172a!important;
  color:#e5edf7!important;
}
body.dark-mode th{
  background:#111827!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}
body.dark-mode td{
  border-color:#334155!important;
}
body.dark-mode .compact-title,
body.dark-mode .compact-table .compact-notes,
body.dark-mode .compact-table .notes-details summary,
body.dark-mode .report-card *,
body.dark-mode .report-section *,
body.dark-mode #reportOutput *,
body.dark-mode .card h2,
body.dark-mode .card h3{
  color:#e5edf7!important;
}
body.dark-mode .small,
body.dark-mode .compact-sub,
body.dark-mode .compact-label,
body.dark-mode .last-action,
body.dark-mode #reportOutput .small{
  color:#b8c7da!important;
}
body.dark-mode .kpi{
  background:#0f172a!important;
  border-color:#334155!important;
}
body.dark-mode .kpi .label{
  background:linear-gradient(135deg,#164e63,#1e3a8a)!important;
  color:#f8fafc!important;
}
body.dark-mode .kpi .value{
  background:#0f172a!important;
  color:#f8fafc!important;
}
body.dark-mode input,
body.dark-mode select,
body.dark-mode textarea{
  background:#020617!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}
body.dark-mode button.secondary,
body.dark-mode button.light{
  background:#111827!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}
body.dark-mode button.primary{
  background:linear-gradient(135deg,#1d4ed8,#0f766e)!important;
  color:#ffffff!important;
}
body.dark-mode button.danger{
  background:#3b1116!important;
  color:#fecdd3!important;
  border-color:#7f1d1d!important;
}
body.dark-mode .notes-body{
  background:#020617!important;
  color:#e5edf7!important;
  border-color:#475569!important;
}
body.dark-mode .sold-table-wrap,
body.dark-mode #soldTable tr{
  background:#0f172a!important;
  border-color:#334155!important;
}
@media(max-width:900px){
  header{
    padding-right:22px!important;
    padding-top:72px!important;
    min-height:150px!important;
  }
  .user-bar{
    top:14px!important;
    right:14px!important;
    left:14px!important;
    max-width:none!important;
    justify-content:flex-end!important;
  }
  .user-badge{
    max-width:48vw!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}


/* v3.3.3 high-contrast dark mode and multi-suburb controls */
header>p{display:none!important}
body.dark-mode,
body.dark-mode *{
  text-shadow:none!important;
}
body.dark-mode .panel,
body.dark-mode main,
body.dark-mode .card,
body.dark-mode .table-wrap,
body.dark-mode table,
body.dark-mode thead,
body.dark-mode tbody,
body.dark-mode tr,
body.dark-mode td,
body.dark-mode th,
body.dark-mode .compact-stack,
body.dark-mode .compact-line,
body.dark-mode .compact-label,
body.dark-mode .compact-value,
body.dark-mode .compact-title,
body.dark-mode .compact-sub,
body.dark-mode .compact-notes,
body.dark-mode .notes-details,
body.dark-mode .notes-details summary,
body.dark-mode .history-dropdown,
body.dark-mode .history-dropdown summary,
body.dark-mode .history-list,
body.dark-mode .history-item,
body.dark-mode .report-section,
body.dark-mode .report-card,
body.dark-mode .report-preview,
body.dark-mode #reportOutput,
body.dark-mode .result-card,
body.dark-mode .sold-detail-box,
body.dark-mode .sold-detail-field,
body.dark-mode .sold-summary-address{
  color:#f8fafc!important;
}
body.dark-mode td *:not(button):not(select):not(option):not(input):not(textarea),
body.dark-mode .card *:not(button):not(select):not(option):not(input):not(textarea){
  color:#f8fafc!important;
}
body.dark-mode .small,
body.dark-mode .compact-sub,
body.dark-mode .compact-label,
body.dark-mode .last-action,
body.dark-mode .label{
  color:#d7e3f4!important;
}
body.dark-mode input,
body.dark-mode select,
body.dark-mode textarea{
  background:#020617!important;
  color:#ffffff!important;
  border-color:#64748b!important;
}
body.dark-mode select option{
  background:#020617!important;
  color:#ffffff!important;
}
body.dark-mode .compact-table th{
  background:#020617!important;
  color:#ffffff!important;
}
body.dark-mode .compact-table td{
  background:#0f172a!important;
  color:#ffffff!important;
  border-color:#475569!important;
}
body.dark-mode .compact-wrap{
  border-color:#64748b!important;
}
body.dark-mode button.light,
body.dark-mode button.secondary{
  background:#111827!important;
  color:#ffffff!important;
  border-color:#64748b!important;
}
body.dark-mode button.primary{
  color:#ffffff!important;
}
.multi-suburb{
  position:relative;
  min-width:190px;
}
.multi-suburb-button{
  width:100%;
  min-height:42px;
  text-align:left;
  padding:10px 38px 10px 12px!important;
  border:1px solid #d8e1ea!important;
  background:#fff!important;
  color:#102033!important;
  border-radius:12px!important;
  font-weight:800!important;
  position:relative;
}
.multi-suburb-button:after{
  content:"▾";
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  color:#64748b;
}
.multi-suburb-menu{
  display:none;
  position:absolute;
  z-index:90;
  top:calc(100% + 6px);
  left:0;
  width:min(320px,90vw);
  max-height:360px;
  overflow:auto;
  background:#ffffff;
  color:#102033;
  border:1px solid #d8e1ea;
  border-radius:16px;
  padding:8px;
  box-shadow:0 18px 48px rgba(15,23,42,.20);
}
.multi-suburb.open .multi-suburb-menu{display:block}
.multi-suburb-option{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 9px;
  border-radius:10px;
  font-size:13px;
  font-weight:700;
  color:#102033;
}
.multi-suburb-option:hover{background:#edf4fb}
.multi-suburb-option.all{
  border-bottom:1px solid #e2e8f0;
  margin-bottom:4px;
  color:#17365d;
}
.multi-suburb-option input{width:auto!important}
body.dark-mode .multi-suburb-button{
  background:#020617!important;
  color:#ffffff!important;
  border-color:#64748b!important;
}
body.dark-mode .multi-suburb-menu{
  background:#020617!important;
  color:#ffffff!important;
  border-color:#64748b!important;
}
body.dark-mode .multi-suburb-option{
  color:#ffffff!important;
}
body.dark-mode .multi-suburb-option:hover{background:#172338!important}
.change-log-list{
  display:grid;
  gap:8px;
  max-height:360px;
  overflow:auto;
}
.change-log-entry{
  border:1px solid #d8e1ea;
  border-radius:14px;
  padding:10px;
  background:#fff;
  display:grid;
  gap:4px;
}
.change-log-entry strong{color:#17365d}
.change-log-entry span{margin-left:6px;color:#64748b}
body.dark-mode .change-log-entry{
  background:#020617!important;
  border-color:#475569!important;
}
body.dark-mode .change-log-entry strong,
body.dark-mode .change-log-entry span{
  color:#f8fafc!important;
}
@media(max-width:760px){
  .multi-suburb{min-width:0;width:100%}
  .multi-suburb-menu{width:100%}
}



body.dark-mode .global-search-results{background:#020617!important;color:#f8fafc!important;border-color:#64748b!important}
body.dark-mode .global-search-result{background:#020617!important;color:#f8fafc!important}
body.dark-mode .global-search-result:hover,body.dark-mode .global-search-result:focus{background:#172338!important}
body.dark-mode .global-search-result strong,body.dark-mode .global-search-meta{color:#f8fafc!important}
/* v3.4 security visibility and cloud database mode */
.panel.locked-tab{display:none!important}
body.dark-mode .change-log-list,
body.dark-mode #changeLog,
body.dark-mode #changeLog *:not(button):not(input):not(select):not(textarea){
  color:#f8fafc!important;
}
.cloud-mode-note{
  border:1px solid #d8e1ea;
  border-radius:14px;
  padding:12px;
  background:#f8fafc;
  color:#102033;
}
body.dark-mode .cloud-mode-note{
  background:#020617!important;
  border-color:#475569!important;
  color:#f8fafc!important;
}


/* v3.4.1 strict permission visibility and readable cloud-save status */
nav [data-tab].locked-tab,
.nav-more.locked-tab,
.panel.locked-tab{
  display:none!important;
}
body.dark-mode .save-status-pill{
  color:#ffffff!important;
}
body.dark-mode .user-badge{
  color:#ffffff!important;
}


/* v3.4.2 scroll repair and table containment */
html,body{
  min-height:100%!important;
  height:auto!important;
  overflow-y:auto!important;
}
main{
  overflow:visible!important;
}
.card{
  overflow:visible!important;
}
.table-wrap,
.compact-wrap,
.sold-table-wrap{
  max-width:100%!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  box-sizing:border-box!important;
}
#propertyTable,
#withdrawnTable{
  width:100%!important;
}
#sold .card{
  overflow:hidden!important;
}
#sold .sold-table-wrap{
  max-height:calc(100vh - 290px)!important;
  min-height:320px!important;
  overflow:auto!important;
  border:1px solid #0f172a!important;
  border-radius:18px!important;
  background:#ffffff!important;
}
#soldTable{
  width:100%!important;
  min-width:920px!important;
  table-layout:auto!important;
}
#soldTable th,
#soldTable td{
  box-sizing:border-box!important;
}
.compact-wrap{
  max-height:calc(100vh - 310px)!important;
  min-height:360px!important;
  overflow:auto!important;
}
body.dark-mode #sold .sold-table-wrap,
body.dark-mode .compact-wrap{
  background:#0f172a!important;
  border-color:#64748b!important;
}
@media(max-width:760px){
  #sold .sold-table-wrap{
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    border:0!important;
  }
  #soldTable{
    min-width:0!important;
  }
  .compact-wrap{
    max-height:none!important;
    min-height:0!important;
    overflow:auto!important;
  }
}


/* v3.4.4 timeline and audit controls */
#timelineModal .modal-box{
  background:#ffffff!important;
  color:#102033!important;
}
#timelineTitle{
  color:#102033!important;
}
#timelineBody,
#timelineBody *:not(button){
  color:#102033!important;
}
.timeline-event{
  background:#ffffff!important;
  color:#102033!important;
  border:1px solid #cbd5e1!important;
}
.timeline-title{
  color:#102033!important;
}
.timeline-date{
  color:#475569!important;
}
.timeline-detail{
  color:#334155!important;
  line-height:1.45!important;
}
body.dark-mode #timelineModal .modal-box{
  background:#0f172a!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}
body.dark-mode #timelineTitle,
body.dark-mode #timelineBody,
body.dark-mode #timelineBody *:not(button){
  color:#f8fafc!important;
}
body.dark-mode .timeline-event{
  background:#111827!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}
body.dark-mode .timeline-title{
  color:#ffffff!important;
}
body.dark-mode .timeline-date{
  color:#cbd5e1!important;
}
body.dark-mode .timeline-detail{
  color:#e2e8f0!important;
}
.change-log-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:6px;
}
.change-log-entry.reverted{
  opacity:.78;
}
.audit-reverted{
  color:#0f766e!important;
  font-weight:900!important;
}
body.dark-mode .audit-reverted{
  color:#5eead4!important;
}


/* v3.4.6 permission and change log polish */
.change-log-filters{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(220px,320px);
  align-items:end;
}
.clear-notes-btn{
  width:100%!important;
  margin-top:6px!important;
  font-size:11px!important;
}
.change-log-entry .small b{
  color:inherit!important;
}
body.dark-mode .change-log-entry .small b{
  color:#ffffff!important;
}
@media(max-width:760px){
  .change-log-filters{
    grid-template-columns:1fr!important;
  }
}


/* v3.4.8 expanded Sold row dark-mode fix */
body.dark-mode #soldTable .sold-detail-row,
body.dark-mode #soldTable .sold-detail-row td,
body.dark-mode #soldTable .sold-detail-content,
body.dark-mode #soldTable .sold-detail-box,
body.dark-mode #soldTable .sold-detail-field,
body.dark-mode #soldTable .sold-history-dropdowns,
body.dark-mode #soldTable details,
body.dark-mode #soldTable summary,
body.dark-mode #soldTable .notes-details,
body.dark-mode #soldTable .notes-body{
  background:#0f172a!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}

body.dark-mode #soldTable .sold-detail-field,
body.dark-mode #soldTable .report-field,
body.dark-mode #soldTable .sold-detail-box{
  background:#111827!important;
  color:#f8fafc!important;
  border:1px solid #475569!important;
  box-shadow:none!important;
}

body.dark-mode #soldTable .sold-detail-field *,
body.dark-mode #soldTable .report-field *,
body.dark-mode #soldTable .sold-detail-box *,
body.dark-mode #soldTable .sold-detail-row *:not(button):not(select):not(option):not(input):not(textarea){
  color:#f8fafc!important;
  text-shadow:none!important;
}

body.dark-mode #soldTable .sold-detail-field .label,
body.dark-mode #soldTable .report-field .label,
body.dark-mode #soldTable .sold-detail-row .label{
  color:#cbd5e1!important;
  background:transparent!important;
}

body.dark-mode #soldTable .sold-detail-field .value,
body.dark-mode #soldTable .report-field .value,
body.dark-mode #soldTable .sold-detail-row .value{
  color:#ffffff!important;
  background:transparent!important;
}

body.dark-mode #soldTable .history-dropdown,
body.dark-mode #soldTable .history-dropdown summary,
body.dark-mode #soldTable .history-list,
body.dark-mode #soldTable .history-item{
  background:#111827!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}

body.dark-mode #soldTable .history-dropdown summary{
  color:#ffffff!important;
}

body.dark-mode #soldTable .notes-body{
  background:#020617!important;
  color:#f8fafc!important;
}

body.dark-mode #soldTable .sold-detail-row button.light,
body.dark-mode #soldTable .sold-detail-row button.secondary{
  background:#111827!important;
  color:#ffffff!important;
  border-color:#64748b!important;
}

body.dark-mode #soldTable .sold-summary-row,
body.dark-mode #soldTable .sold-summary-row td{
  background:#0f172a!important;
  color:#f8fafc!important;
}

body.dark-mode #soldTable .sold-summary-row *:not(button){
  color:#f8fafc!important;
}



/* v3.5.13 Supabase cloud-load history merge + Facing label fix */
.theme-toggle{cursor:pointer!important}
body.dark-mode .compact-history,
body.dark-mode .compact-history details,
body.dark-mode .compact-history summary,
body.dark-mode .compact-history-body,
body.dark-mode .compact-history-item,
body.dark-mode .compact-history-item strong,
body.dark-mode .compact-history-item span,
body.dark-mode .compact-history-item div,
body.dark-mode .history-dropdown,
body.dark-mode .history-dropdown summary,
body.dark-mode .history-list,
body.dark-mode .history-item,
body.dark-mode .history-item strong,
body.dark-mode .history-empty{
  background:#111827!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}
body.dark-mode .compact-history summary,
body.dark-mode .history-dropdown summary{
  background:#020617!important;
  color:#ffffff!important;
}
body.dark-mode .compact-history-item .small,
body.dark-mode .history-item .small{
  color:#d7e3f4!important;
}



@media(max-width:860px){
  header{padding:14px 16px}.app-brand{justify-content:center;width:100%}.header-primary-row{display:grid;grid-template-columns:1fr;gap:10px}.header-global-search{max-width:none;width:100%;min-width:0}.user-bar{justify-content:center;width:100%}.nav-more{margin-left:0}
}

/* v3.6.1 text-only header hotfix: hide routine cloud status and align search */
header{
  padding:20px 24px!important;
  padding-right:24px!important;
  min-height:0!important;
}
.app-header-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.brand-wordmark{display:grid!important;gap:2px!important}
.brand-kicker{
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:#b9d7ee!important;
}
.user-bar{
  position:static!important;
  margin-left:auto!important;
  width:auto!important;
  max-width:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
.header-save-status,
.admin-mode .header-save-status{
  display:none!important;
}
.header-primary-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  flex-wrap:nowrap!important;
  margin-top:14px!important;
}
.header-primary-row nav{
  margin-top:0!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.header-global-search{
  position:relative!important;
  flex:0 1 460px!important;
  width:clamp(360px,32vw,520px)!important;
  max-width:520px!important;
  min-width:320px!important;
}
.header-global-search input[type=search]{width:100%!important;min-width:0!important}
@media(max-width:980px){
  .header-primary-row{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .header-global-search{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
  }
}
@media(max-width:760px){
  header{
    padding:14px 16px!important;
    padding-top:14px!important;
    min-height:0!important;
  }
  .app-header-top{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .app-brand{
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
  }
  .user-bar{
    width:100%!important;
    margin-left:0!important;
    justify-content:space-between!important;
  }
  .user-badge{max-width:58vw!important}
  nav{width:100%!important}
}

/* Hotfix: mobile UX, dashboard drilldowns and global search polish */
@media (max-width: 768px){
  .header-primary-row{display:flex!important;flex-direction:column;align-items:stretch;gap:12px}
  nav{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;flex-wrap:nowrap}
  nav button,.nav-more-toggle,.nav-more-menu button{min-height:42px;font-size:14px;white-space:nowrap}
  .header-global-search{order:2;width:100%!important;min-width:0!important;max-width:none!important}
  .global-search-results{position:fixed;left:12px;right:12px;top:auto;max-height:58vh;border-radius:18px}
  .dashboard-kpi-grid,.dashboard-pulse-grid,.dashboard-share-cards,.dashboard-breakdown{grid-template-columns:1fr!important}
  .dashboard-kpi,.dashboard-pulse-item,.dashboard-share-card{min-width:0}
  .table-wrap,.search-result,.report-search-results,.proping-report-preview,.discovery-run-status{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
  table{min-width:720px}
  button,input,select,textarea{min-height:42px;font-size:16px}
  .modal-card{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;max-height:88vh;overflow:auto}
  .agency-search-lab-card .toolbar{display:grid;grid-template-columns:1fr;gap:8px}
}
@media (max-width: 480px){
  header{padding:12px}.brand-wordmark h1{font-size:20px}.user-bar{gap:6px}
  .global-search-result{padding:12px}.card{padding:12px}
}

/* UX hotfix compact mobile header/dashboard; markers: @media (max-width:768px) @media (max-width:480px) */
@media (max-width:768px){
  header{padding:10px 12px!important}
  .app-header-top{grid-template-columns:1fr!important;gap:6px!important}
  .brand-kicker{font-size:9px!important;letter-spacing:.1em!important}.brand-wordmark h1{font-size:18px!important;line-height:1.1!important}
  .user-bar{gap:6px!important;overflow-x:auto;padding-bottom:2px}.user-bar button,.user-badge{font-size:12px!important;min-height:34px!important}
  .header-primary-row{margin-top:8px!important;gap:8px!important}.header-primary-row nav{overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:3px!important;margin:0!important}
  nav button,.nav-more-toggle,.nav-more-menu button{padding:7px 10px!important;min-height:36px!important;font-size:13px!important;border-radius:999px!important;white-space:nowrap!important}
  .nav-more{position:static!important;margin-left:0!important}.nav-more-menu{position:absolute!important;right:12px!important;left:12px!important;top:auto!important;min-width:0!important}
  .header-global-search{width:100%!important;max-width:none!important;min-width:0!important}.global-search-results{position:fixed!important;left:12px!important;right:12px!important;top:106px!important;width:auto!important;max-width:calc(100vw - 24px)!important;max-height:60vh!important}
  main{padding:12px!important}.dashboard-hero{gap:10px!important;margin-bottom:10px!important}.dashboard-hero-card,.dashboard-hero-side{padding:12px!important;border-radius:14px!important}.dashboard-hero-card h2{font-size:22px!important}.dashboard-hero-card p{font-size:13px!important}.dashboard-hero-side .value{font-size:20px!important}
  .dashboard-kpi-grid{gap:10px!important;margin-bottom:10px!important}.dashboard-kpi{padding:12px!important}.dashboard-kpi .value{font-size:24px!important;margin:4px 0 1px!important}.dashboard-grid,.dashboard-grid-wide{gap:10px!important}.card{margin-bottom:10px!important}.toolbar{gap:8px!important;margin-bottom:10px!important}
  .proping-drilldown-backdrop{padding:82px 12px 16px!important}.proping-drilldown-card{width:calc(100vw - 24px)!important;max-height:calc(100vh - 104px)!important;padding:12px!important}.proping-drilldown-table table{min-width:760px!important}
}
@media (max-width:480px){
  header{padding:8px 10px!important}.brand-wordmark h1{font-size:17px!important}.brand-kicker{display:none!important}.global-search-shortcut{display:none}.header-global-search input.global-search-input[type=search]{padding-right:14px!important}
  .global-search-results{left:10px!important;right:10px!important;top:96px!important;max-width:calc(100vw - 20px)!important}.dashboard-hero-card h2{font-size:20px!important}.dashboard-kpi .value{font-size:22px!important}.dashboard-actions{grid-template-columns:1fr!important}
}
/* v3.5.54 performance/loading overlay */
.app-loading-overlay{
  position:fixed;
  inset:0;
  z-index:10050;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:linear-gradient(135deg,rgba(7,17,31,.96),rgba(23,54,93,.96) 56%,rgba(15,23,42,.98));
  color:#ffffff;
}
.app-loading-overlay.show{display:flex!important}
.app-loading-card{
  width:min(520px,100%);
  background:rgba(255,255,255,.96);
  color:#0f172a;
  border-radius:24px;
  box-shadow:0 30px 90px rgba(0,0,0,.42);
  padding:30px;
  text-align:center;
  border:1px solid rgba(255,255,255,.5);
}
.app-loading-logo{
  width:54px;
  height:54px;
  margin:0 auto 14px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:#17365d;
  color:#ffffff;
  font-weight:900;
  letter-spacing:.06em;
}
.app-loading-card h2{margin:0 0 8px;color:#17365d;font-size:24px}
.app-loading-card p{margin:0;color:#64748b;line-height:1.45}
.app-loading-spinner{
  width:44px;
  height:44px;
  margin:20px auto 12px;
  border-radius:50%;
  border:4px solid #dbe7f3;
  border-top-color:#17365d;
  animation:pmrSpin .85s linear infinite;
}
.app-loading-progress{
  height:8px;
  background:#e5edf6;
  border-radius:999px;
  overflow:hidden;
  margin-top:18px;
}
.app-loading-progress span{
  display:block;
  height:100%;
  width:42%;
  border-radius:999px;
  background:#17365d;
  animation:pmrLoadBar 1.45s ease-in-out infinite;
}
.app-loading-note{font-size:12px!important;margin-top:12px!important;color:#64748b!important}
@keyframes pmrSpin{to{transform:rotate(360deg)}}
@keyframes pmrLoadBar{0%{transform:translateX(-100%);width:36%}50%{width:58%}100%{transform:translateX(260%);width:36%}}
body.dark-mode .app-loading-card{background:#0f172a;color:#f8fafc;border-color:#334155}
body.dark-mode .app-loading-card h2{color:#ffffff}
body.dark-mode .app-loading-card p,
body.dark-mode .app-loading-note{color:#cbd5e1!important}
body.dark-mode .app-loading-joke{color:#e2e8f0!important}
body.dark-mode .app-loading-progress{background:#1e293b}
body.dark-mode .app-loading-spinner{border-color:#334155;border-top-color:#e2e8f0}

/* v3.5.56 safe table pagination */
.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 10px;flex-wrap:wrap;font-size:12px;font-weight:800;color:#475569}
.table-pagination .pager-buttons{display:flex;gap:8px;align-items:center}
.table-pagination button{padding:7px 11px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#17365d;font-weight:900;cursor:pointer}
.table-pagination button:disabled{opacity:.45;cursor:not-allowed}
.table-pagination select{width:auto;min-width:76px;padding:7px 9px;border-radius:8px}
body.dark-mode .table-pagination{color:#cbd5e1}
body.dark-mode .table-pagination button{background:#111827;color:#e2e8f0;border-color:#334155}


.admin-export-only{display:none!important} body.admin-mode .admin-export-only{display:inline-flex!important}
/* v3.5.59 polish: aligned stats cards, report-only edits, clean buyer/property match switch */
.kpis .kpi{display:flex!important;flex-direction:column!important;min-height:112px}.kpis .kpi .small{margin-top:auto!important}.dashboard-kpi{display:flex!important;flex-direction:column!important}.dashboard-kpi .note{margin-top:auto!important}
.report-edit-panel{margin:12px 0 16px;border:1px solid #d8e1ea;border-radius:14px;background:#fbfdff;padding:14px}.report-edit-panel h3{margin:0 0 6px;color:#17365d}.report-edit-panel .small{margin-bottom:10px}.report-edit-panel.hidden{display:none!important}
.match-mode-toggle-card{margin-bottom:14px}.match-mode-toggle{display:flex;gap:8px;flex-wrap:wrap}.match-mode-toggle button{border:1px solid #cbd5e1;background:#fff;color:#17365d}.match-mode-toggle button.active{background:#17365d;color:#fff;border-color:#17365d}.match-mode-panel.hidden,.match-result-panel.hidden{display:none!important}
body.dark-mode .report-edit-panel,body.dark-mode .match-mode-toggle-card{background:#0f172a!important;border-color:#334155!important;color:#f8fafc!important}
body.dark-mode .match-mode-toggle button{background:#111827;color:#f8fafc;border-color:#475569}body.dark-mode .match-mode-toggle button.active{background:#2a7f8e;color:#fff}



/* v3.5.61 stats-card alignment and stable buyer/property match controls */
#medianKpis.kpis{align-items:stretch!important;overflow:visible!important;margin-bottom:20px!important}
#medianKpis.kpis .kpi{display:flex!important;flex-direction:column!important;min-height:128px!important;overflow:visible!important}
#medianKpis.kpis .kpi .value{padding:16px 12px 9px!important;line-height:1.15!important}
#medianKpis.kpis .kpi .small{display:block!important;padding:0 12px 14px!important;margin-top:auto!important;text-align:center!important;line-height:1.35!important;color:#52657a!important;white-space:normal!important;overflow:visible!important}
body.dark-mode #medianKpis.kpis .kpi .small{color:#cbd5e1!important}

/* v3.5.60 dashboard/statistics/property-match recovery */
.inline-progress{width:100%;height:9px;border-radius:999px;background:#e5e7eb;overflow:hidden;margin-top:8px;display:none}
.inline-progress.show{display:block}
.inline-progress span{display:block;height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#17365d,#2f5f95);transition:width .22s ease}
body.dark-mode .inline-progress{background:#1f2937}
.dashboard-pulse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.dashboard-pulse-item{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff}
body.dark-mode .dashboard-pulse-item{background:#111827}
.dashboard-pulse-item .label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}
.dashboard-pulse-item .value{font-size:24px;font-weight:900;color:#17365d;margin-top:4px}
body.dark-mode .dashboard-pulse-item .value{color:#bfdbfe}
.dashboard-pulse-list{display:grid;gap:8px;margin-top:12px}
.dashboard-pulse-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:8px;font-size:13px}
.dashboard-pulse-row strong{color:#17365d}
body.dark-mode .dashboard-pulse-row strong{color:#bfdbfe}
.stats-market-share-card{margin-top:16px}
.match-mode-toggle-card .match-mode-toggle{display:flex;gap:8px;flex-wrap:wrap}
.match-mode-toggle button.active{background:#17365d;color:white;border-color:#17365d}
