/* RentCrest first-concept design: editorial property control room. */
:root{--crest-navy:#0d1b27;--crest-ink:#172638;--crest-gold:#d7ad66;--crest-green:#278b68;--crest-red:#df503e;--crest-amber:#e8a23f;--crest-line:#e7e9e6;--crest-white:#fff}
body{background:#f6f7f5;color:var(--crest-ink)}
.crest-app{min-height:100vh;display:grid;grid-template-columns:246px minmax(0,1fr);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:13px;color:#182a3d}
.crest-sidebar{position:sticky;top:0;align-self:start;height:100vh;display:flex;flex-direction:column;background:linear-gradient(165deg,#101f2b 0%,#0a1723 75%,#0c1a26 100%);color:white;padding:27px 13px 17px;z-index:9}
.crest-brand{display:flex;align-items:center;gap:9px;margin:0 8px 50px}
.crest-logo-symbol{width:44px;height:48px;flex:none}
.crest-brand-name{font-family:Georgia,"Times New Roman",serif;font-size:31px;font-weight:400;letter-spacing:-1.65px;line-height:1.02;color:#fff}
.crest-brand-sub{font-size:8px;letter-spacing:1.4px;margin-top:8px;color:#e4e9ed;white-space:nowrap;font-weight:700}
.crest-navigation{display:flex;flex-direction:column;gap:8px}
.crest-side-link{border:0;border-radius:8px;background:transparent;color:#ecf1f3;width:100%;display:flex;align-items:center;min-height:51px;gap:17px;text-align:left;font-size:13px;font-weight:560;padding:0 17px;transition:background .15s ease,transform .15s ease}
.crest-side-link>svg{flex:none;stroke-width:1.65}
.crest-side-link:hover,.crest-side-link:focus-visible{background:#253749;color:#fff}
.crest-side-link.is-active{background:#263b4d;color:#fff}
.crest-side-link.is-active>svg{stroke:#fff}
.crest-count{display:grid;place-items:center;margin-left:auto;min-width:23px;height:23px;border-radius:50%;background:#ef604b;color:white;font-size:12px}
.crest-nav-rule{height:1px;background:#3b4a55;margin:13px 9px 9px}
.crest-status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-left:auto}
.crest-status-dot.crest-offline{background:#d4a659;box-shadow:0 0 0 3px #d4a65915}
.crest-sidebar-bottom{margin-top:auto}
.crest-admin-links{padding:0 10px 18px;display:flex;flex-direction:column;gap:7px}
.crest-admin-links button{background:transparent;border:0;color:#718894;text-align:left;font-size:10px;display:flex;gap:10px;align-items:center;padding:5px}
.crest-admin-links button:hover{color:#fff}
.crest-account{display:flex;align-items:center;gap:10px;border-top:1px solid #354450;padding:17px 9px 2px;min-width:0}
.crest-account-icon{border:1px solid #b8ccd0;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;flex:none}
.crest-account>span:nth-child(2){min-width:0;flex:1}
.crest-account strong{display:block;color:#fff;font-size:11px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crest-account small{display:block;color:#93a2ae;font-size:9px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crest-account button{border:0;background:transparent;color:#8499a6;display:flex;align-items:center;padding:2px}
.crest-account button:hover{color:#fff}
.crest-work{min-width:0;background:#f5f6f4}
.crest-photo-hero{height:171px;position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:31px 30px 0 40px;background:
 linear-gradient(90deg,rgba(15,30,43,.87),rgba(15,29,40,.34) 47%,rgba(12,26,35,.08) 100%),
 url("/static/uk-terrace.svg") center 43%/cover,
 linear-gradient(110deg,#203748,#60757b);}
.crest-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,3.1vw,49px);font-weight:400;letter-spacing:-1.8px;line-height:1.13;margin:0;color:#fff;text-shadow:0 3px 15px #0a1a294a}
.crest-hero-copy p{color:#e6ecf0;font-size:14px;letter-spacing:2.45px;margin:7px 0 0;font-weight:400}
.crest-month-picker{background:#fff;border-radius:8px;box-shadow:0 5px 23px #16222b24;display:flex;align-items:center;gap:3px;height:43px;color:#192638;white-space:nowrap;padding:3px;flex:none}
.crest-month-picker span{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:620;padding:0 12px}
.crest-month-picker button{border:0;background:transparent;color:#1c2938;height:35px;width:28px;display:grid;place-items:center;border-radius:5px}
.crest-month-picker button:hover{background:#eff2f3}
.crest-month-picker span svg{stroke-width:1.7}
.crest-simple-top{min-height:134px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 40px;background:linear-gradient(100deg,#182c3c,#273d4b)}
.crest-simple-top small{letter-spacing:1.5px;color:#b9c6cb;font-size:9px}
.crest-simple-top h1{font-family:Georgia,"Times New Roman",serif;color:white;font-size:40px;font-weight:400;margin:8px 0 0}
.crest-simple-actions button{color:white;border:1px solid #71818a;background:#ffffff0b;padding:10px 14px;border-radius:8px;display:inline-flex;align-items:center;gap:8px;font-size:12px}
.crest-link-btn svg{transform:rotate(180deg)}
.crest-main{max-width:none!important;margin:0!important;padding:24px 32px 50px!important;min-width:0}
.crest-main.is-overview{position:relative;padding:0 13px 16px!important;margin-top:-36px!important}
.crest-columns{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(330px,1fr);gap:12px;align-items:start}
.crest-col-left,.crest-col-right{display:flex;flex-direction:column;gap:13px;min-width:0}
.crest-paper{background:var(--crest-white);border-radius:13px;box-shadow:0 3px 20px #18202a08;border:1px solid #edf0ee;min-width:0}
.crest-paper h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.6px;font-size:22px;line-height:1.15;margin:0;color:#111e2e}
.crest-paper p{font-size:12px;line-height:1.5;color:#718091;margin:6px 0 0}
.crest-kpis{height:155px;display:grid;grid-template-columns:1.08fr 1.08fr .95fr;align-items:stretch;background:rgba(255,255,255,.98);border:1px solid #e5e9e8;border-radius:13px;box-shadow:0 6px 27px #11263511;overflow:hidden;padding:26px 13px;margin-bottom:0}
.crest-kpi{padding:0 20px;display:flex;flex-direction:column;min-width:0}
.crest-kpi+.crest-kpi{border-left:1px solid #e9ebea}
.crest-kpi strong{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(34px,3.25vw,54px);line-height:1;letter-spacing:-1.7px;white-space:nowrap}
.crest-kpi-collected strong{color:#198a64}.crest-kpi-missing strong{color:#a46f2a}.crest-kpi-rate strong{color:#1b2837}
.crest-kpi>span{font-size:16px;line-height:1.25;margin-top:10px;font-weight:620}
.crest-kpi-collected>span{color:#11855f}.crest-kpi-missing>span{color:#996a2c}.crest-kpi-rate>span{color:#213245}
.crest-kpi small{font-size:11px;color:#667381;margin-top:8px;line-height:1.4}
.crest-info{font-size:11px;border-bottom:1px dotted #9aa1a5;color:#798c97}
.crest-rate-track{background:#e2e7e9;height:11px;border-radius:11px;overflow:hidden;margin-top:12px}
.crest-rate-track i{height:100%;display:block;background:linear-gradient(90deg,#22936b,#6eb8a1);border-radius:11px}
.crest-board{padding:18px 14px 14px}
.crest-panel-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin:0 2px 16px}
.crest-board-tools{display:flex;align-items:center;gap:11px;padding-top:8px;flex-wrap:wrap;justify-content:flex-end}
.crest-legend{display:flex;gap:9px;align-items:center}
.crest-legend>span{white-space:nowrap;display:flex;align-items:center;gap:4px;font-size:9px;color:#576571}
.crest-legend i{height:8px;width:8px;border-radius:50%;display:inline-block}
.crest-legend .green{background:#42a477}.crest-legend .amber{background:#e9a53b}
.crest-legend .red{background:#df5448}.crest-legend .grey{background:#aab4b8}
.crest-segment{background:#eef1f1;border-radius:7px;padding:3px;display:flex;align-items:center;gap:2px}
.crest-segment button{display:flex;align-items:center;justify-content:center;gap:5px;background:transparent;border:0;border-radius:5px;color:#516274;font-size:10px;padding:7px 8px;font-weight:650;white-space:nowrap}
.crest-segment button.active{background:#0d1f2d;color:#fff;box-shadow:0 3px 8px #1834451c}
.crest-property-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.crest-property-card{min-width:0;text-align:left;border:1px solid #e8eae7;background:#fff;border-radius:11px;padding:7px 7px 9px;box-shadow:0 3px 9px #09233908;transition:box-shadow .2s,transform .2s,border-color .2s;color:#213040}
.crest-property-card:hover,.crest-property-card:focus-visible{box-shadow:0 7px 23px #142c381c;transform:translateY(-2px);border-color:#a8cbc0}
.crest-card-photo{height:102px;position:relative;border-radius:7px;overflow:hidden;background:linear-gradient(140deg,#d1dbd8,#8c9d9f);margin-bottom:11px}
.crest-card-photo img{height:100%;width:100%;object-fit:cover;display:block}
.crest-photo-fallback{background:linear-gradient(140deg,#dae2de,#a2b1b1)}
.crest-card-photo .crest-chip{position:absolute;left:7px;bottom:7px}
.crest-chip{display:inline-flex;align-items:center;justify-content:center;min-height:26px;border-radius:7px;color:white;font-size:11px;font-weight:700;padding:5px 10px}
.crest-chip.is-collected{background:#399a67}.crest-chip.is-partial{background:#efac3f}.crest-chip.is-missing{background:#e35648}.crest-chip.is-unknown{background:#9aa2a9}
.crest-card-name{font-size:12px;line-height:1.25;font-weight:780;color:#223047;margin:0 2px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crest-card-rent{font-size:12px;color:#36485c;margin:0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crest-card-rent span{color:#7e8b98}
.crest-card-rate{font-size:10px;color:#677886;margin:6px 2px 7px}
.crest-progress{height:8px;border-radius:7px;overflow:hidden;background:#e4e9eb;margin:0 2px}
.crest-progress span{display:block;height:100%;border-radius:7px;background:#3ca178}
.crest-progress span.is-partial{background:#f0ae41}.crest-progress span.is-missing{background:#e66255}.crest-progress span.is-unknown{background:#9eaeb3}
.crest-under-grid{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 3px 0}
.crest-under-grid span{font-size:9px;color:#a1aaae}
.crest-under-grid button{white-space:nowrap;background:none;border:0;color:#287858;font-size:10px;display:flex;align-items:center;gap:7px;font-weight:650}
.crest-map-message{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#82969d;gap:12px;text-align:center}
.crest-map-message h3{font-size:18px;color:#264054;margin:0}
.crest-map-message p{max-width:330px}
.crest-map-message button{border:1px solid #cee2d5;background:#eaf5ef;border-radius:8px;padding:9px 14px;color:#23674e;font-size:11px}
.crest-side-panel-head{display:flex;align-items:center;gap:10px;padding:18px 20px 14px}
.crest-side-panel-head>button{margin-left:auto;border:0;background:transparent;color:#176aa2;font-size:11px;font-weight:650;display:flex;align-items:center;gap:6px;white-space:nowrap}
.crest-side-panel-head h2{font-size:21px}
.crest-alert-pill{display:grid;place-items:center;height:23px;min-width:23px;padding:0 5px;background:#ed5d46;color:white;border-radius:100px;font-size:12px}
.crest-attention{min-height:385px}
.crest-attention-list{padding:0 18px 8px}
.crest-attention-row{display:flex;gap:12px;align-items:center;min-width:0;width:100%;background:transparent;border:0;border-top:1px solid #eceded;padding:13px 3px;text-align:left}
.crest-attention-row:hover{background:#f7faf8}
.crest-attention-row .crest-attention-pic{width:58px;height:58px;flex:none;overflow:hidden;border-radius:7px;background:#d1d8d8}
.crest-attention-pic img{width:100%;height:100%;object-fit:cover;display:block}
.crest-attention-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.crest-attention-text strong{font-size:12px;font-weight:710;color:#233349;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.crest-attention-text>span{color:#d64b3a;font-size:12px;font-weight:620}
.crest-attention-text>span.is-partial{color:#c88124}.crest-attention-text>span.is-unknown{color:#647887}
.crest-attention-text small{color:#89949e;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crest-attention-row>svg{color:#2c4353;flex:none}
.crest-all-clear{display:flex;flex-direction:column;align-items:center;gap:10px;color:#44936e;padding:60px 15px}
.crest-all-clear strong{color:#2c5440}.crest-all-clear small{color:#89968f}
.crest-agents{min-height:260px;padding-bottom:10px}
.crest-agent-list{padding:2px 19px 0}
.crest-agent-row{display:grid;grid-template-columns:minmax(96px,1fr) minmax(0,1.16fr) 29px;align-items:center;gap:9px;margin:14px 0}
.crest-agent-row>span{font-size:11px;color:#1b2d43;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crest-agent-row strong{display:block;font-size:11px;font-weight:660;color:#1e3147;white-space:nowrap;margin-bottom:6px}
.crest-agent-row small{font-size:10px;color:#46566b}
.crest-agent-track{background:#edf0f0;height:10px;border-radius:10px;overflow:hidden}
.crest-agent-track i{height:100%;display:block;background:linear-gradient(90deg,#3b9a6d,#90c6ba);border-radius:10px}
.crest-agent-footer{padding:0 18px 3px;display:flex;justify-content:flex-end}
.crest-agent-footer button{background:none;border:0;color:#287858;font-size:10px;font-weight:650;display:flex;align-items:center;gap:6px}
.crest-trend{padding:17px 19px 9px;min-height:191px}
.crest-trend .crest-panel-top{margin-bottom:0}
.crest-chart-legend{display:flex;gap:14px;padding-top:4px}
.crest-chart-legend>span{display:flex;gap:6px;align-items:center;font-size:10px;color:#617380;white-space:nowrap}
.crest-chart-legend i{width:8px;height:8px;border-radius:50%}
.crest-chart-legend .mint{background:#a2d1be}.crest-chart-legend .navy{background:#1a2b3b}
.crest-trend-graphic{height:125px;min-height:125px;margin-top:3px}
.crest-trend-graphic svg{width:100%;height:108px;overflow:visible}
.crest-trend-note{font-size:9px!important;color:#93a0a5!important;margin:0!important;text-align:right}
.crest-chart-loading{height:110px;display:grid;place-items:center;color:#95a3a6;font-size:11px}
.crest-summary{min-height:190px}
.crest-summary-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:5px 16px 16px}
.crest-summary-metrics>div{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;min-width:0;border-left:1px solid #e9eced;padding:10px 4px}
.crest-summary-metrics>div:first-child{border-left:0}
.crest-summary-metrics svg{color:#1d3048}
.crest-summary-metrics strong{font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:400;color:#182639;line-height:1}
.crest-summary-metrics span{font-size:9px;color:#566674;line-height:1.3}
.crest-evidence-note{padding:10px 10px 0;font-size:10px!important;color:#8a989b!important;max-width:1000px;line-height:1.6}
/* Existing creation, import, reconciliation, monitor and drawer screens retain their behavior. */
.crest-main:not(.is-overview)>.page-head{margin-top:0}
.crest-main:not(.is-overview) .page-head h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:34px}
.crest-main:not(.is-overview) .panel{box-shadow:0 4px 17px #0e1d2b0b;border-color:#e6ecea}
.crest-main:not(.is-overview) .btn.primary{background:#0e684e;border-color:#0e684e}
.crest-main:not(.is-overview) .page-head{padding-bottom:12px}
/* At desktop and laptop sizes this preserves the reference's photographic four-column board. */
@media(max-width:1380px){
 .crest-columns{grid-template-columns:minmax(0,1.95fr) minmax(315px,1fr)}
 .crest-hero-copy h1{font-size:39px}
 .crest-kpis{padding:22px 6px}
 .crest-kpi{padding:0 14px}
 .crest-kpi strong{font-size:38px}
 .crest-kpi>span{font-size:13px}
 .crest-board-tools{gap:7px}
 .crest-legend{gap:6px}
 .crest-legend>span{font-size:8px}
 .crest-card-photo{height:84px}
 .crest-card-rent{font-size:10px}
 .crest-side-panel-head{padding:16px 13px}
 .crest-attention-list{padding:0 11px 8px}
 .crest-agent-list{padding:2px 11px}
}
@media(max-width:1100px){
 .crest-app{grid-template-columns:208px minmax(0,1fr)}
 .crest-sidebar{padding-left:9px;padding-right:9px}
 .crest-brand-name{font-size:26px}
 .crest-brand-sub{font-size:7px}
 .crest-side-link{font-size:12px;gap:11px}
 .crest-columns{grid-template-columns:1fr}
 .crest-col-right{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
 .crest-summary{grid-column:1 / -1}
 .crest-property-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .crest-card-photo{height:118px}
 .crest-hero-copy h1{font-size:36px}
 .crest-kpi strong{font-size:42px}
 .crest-attention{min-height:0}
}
@media(max-width:730px){
 .crest-app{grid-template-columns:1fr}
 .crest-sidebar{position:relative;top:auto;height:auto;min-height:0;padding:10px 12px}
 .crest-brand{margin:3px 2px 12px}
 .crest-logo-symbol{width:35px;height:36px}
 .crest-brand-name{font-size:23px}
 .crest-brand-sub{font-size:6px;margin-top:5px}
 .crest-navigation{flex-direction:row;overflow-x:auto;gap:3px;padding-bottom:5px}
 .crest-side-link{min-width:max-content;min-height:39px;padding:5px 10px;font-size:11px;gap:7px}
 .crest-side-link>svg{width:15px;height:15px}
 .crest-nav-rule,.crest-sidebar-bottom{display:none}
 .crest-photo-hero{height:190px;padding:23px 15px;display:flex;flex-direction:column;justify-content:flex-start;gap:18px}
 .crest-hero-copy h1{font-size:31px}
 .crest-hero-copy p{font-size:10px;letter-spacing:1.3px}
 .crest-month-picker{height:33px}
 .crest-month-picker span{font-size:11px}
 .crest-month-picker button{height:27px}
 .crest-main.is-overview{margin-top:-4px!important;padding:0 8px 20px!important}
 .crest-main:not(.is-overview){padding:18px 13px!important}
 .crest-simple-top{min-height:100px;padding:15px}
 .crest-simple-top h1{font-size:28px}
 .crest-columns{display:block}
 .crest-col-left,.crest-col-right{gap:11px;margin-bottom:11px}
 .crest-kpis{height:auto;grid-template-columns:1fr 1fr;padding:16px 5px}
 .crest-kpi{padding:0 11px}
 .crest-kpi strong{font-size:29px}
 .crest-kpi>span{font-size:12px}
 .crest-kpi small{font-size:9px}
 .crest-kpi-rate{grid-column:1 / -1;border-left:0!important;border-top:1px solid #ecefeb;margin-top:14px;padding-top:14px;display:grid;grid-template-columns:auto 1fr;gap:5px 14px}
 .crest-kpi-rate .crest-rate-track{grid-column:1 / -1;margin-top:3px}
 .crest-board{padding:14px 10px}
 .crest-board-tools{display:block}
 .crest-legend{display:none}
 .crest-segment{margin-left:auto}
 .crest-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .crest-card-photo{height:110px}
 .crest-card-rent{font-size:11px}
 .crest-col-right{display:flex}
 .crest-attention,.crest-agents{min-height:0}
 .crest-hero-copy h1{letter-spacing:-1px}
 .crest-under-grid{display:block}
 .crest-under-grid button{margin-top:8px}
}
@media(prefers-reduced-motion:reduce){
 .crest-property-card,.crest-side-link{transition:none}
 .crest-property-card:hover{transform:none}
}


/*
 * Ultrawide-display adaptation.
 *
 * The reference laptop screenshot has ~1700 CSS pixels of layout width.
 * On a 4K external monitor or when the browser's own zoom is reduced,
 * fixed-pixel text/cards otherwise shrink visually while occupying a much
 * wider canvas. Scale the ENTIRE interface proportionally rather than
 * stretching the cards or changing their four-column composition.
 *
 * This rule starts at 1700 CSS px, meaning the existing laptop and mobile
 * breakpoints remain byte-for-byte unchanged. CSS 'zoom' participates in
 * layout (unlike transforms), so click areas and the financial side drawer
 * stay aligned and the page does not overflow horizontally.
 *
 * Divide sticky sidebar height / minimum page height by the same factor so
 * the account navigation stays at the foot of the visible viewport.
 */
@media (min-width: 1700px) {
  .crest-app {
    --crest-wide-scale: clamp(1, calc(100vw / 1700px), 2.3);
    zoom: var(--crest-wide-scale);
    min-height: calc(100vh / var(--crest-wide-scale));
  }
  .crest-sidebar {
    height: calc(100vh / var(--crest-wide-scale));
    min-height: calc(100vh / var(--crest-wide-scale));
  }
}


/* Production-facing polish: deliberate photo illustration fallback, not grey boxes. */
.crest-card-photo{height:120px;background:linear-gradient(120deg,#c4d2cb,#e4ded3);margin:0;position:relative;isolation:isolate}
.crest-card-photo img{width:100%;height:100%;object-fit:cover;display:block}
.crest-card-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(0deg,rgba(7,24,34,.26),transparent);pointer-events:none}
.crest-card-photo .crest-chip{z-index:1;left:9px;bottom:9px;font-size:10px;font-weight:750;box-shadow:0 2px 7px #071b2542}
.crest-property-card{padding:7px;display:flex;flex-direction:column;overflow:hidden;text-align:left;min-height:267px;border-color:#e2e9e5;box-shadow:0 4px 13px rgba(20,36,34,.05)}
.crest-property-card:hover,.crest-property-card:focus-visible{box-shadow:0 13px 30px #193b3424;border-color:#a9cabe;transform:translateY(-3px)}
.crest-card-body{display:flex;flex-direction:column;flex:1;padding:12px 5px 3px;min-width:0}
.crest-card-name{margin:0;color:#162c3b;font-size:12.5px;font-weight:760;white-space:normal;line-height:1.28;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:32px}
.crest-card-address{font-size:10px;color:#82918d;min-height:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-top:4px}
.crest-card-amounts{display:flex;align-items:flex-end;gap:7px;margin:12px 0 12px;color:#21374a;white-space:nowrap}
.crest-card-amounts>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.crest-card-amounts>div span{font-size:9px;color:#8b9997;font-weight:580}
.crest-card-amounts>div strong{font-size:13px;font-weight:740;color:#213e4b;overflow:hidden;text-overflow:ellipsis}
.crest-card-amounts .crest-of{font-size:10px;color:#99a5a5;align-self:end;margin-bottom:1px}
.crest-card-body .crest-progress{height:7px;margin:0}
.crest-card-body .crest-card-rate{font-size:10px;color:#71827d;margin:8px 0 0}
.crest-property-grid{gap:12px}
.crest-sidebar-portfolio{margin:0 8px 18px;padding:14px 13px;background:#142b36;border:1px solid #27404a;border-radius:10px;display:flex;flex-direction:column;gap:5px}
.crest-sidebar-portfolio span{font-size:9px;color:#99aaad;font-weight:700;letter-spacing:1.2px}
.crest-sidebar-portfolio strong{font-size:12px;color:#e8f2f1}
.crest-sidebar-portfolio strong i{font-style:normal;color:#8ba8a5}
.crest-sidebar-portfolio small{font-size:10px;color:#819e9f}
.crest-attention-pic{background:#dae4dd!important}
.crest-attention-pic img{object-fit:cover}
.crest-panel-top h2,.crest-side-panel-head h2{letter-spacing:-.45px}
.crest-photo-hero{background-color:#203b49}
.crest-app .drawer h2{font-family:Georgia,"Times New Roman",serif;font-size:28px;font-weight:400;color:#152c3b}
.crest-app .drawer{width:min(550px,100vw);padding:26px 30px 36px}
.crest-app .drawer-header{margin-bottom:22px}
.crest-app .drawer .drawer-metrics{margin:20px 0}
.crest-app .drawer-metric{background:#f7f9f8;border-radius:11px;padding:15px}
.crest-app .drawer-hero{height:132px;overflow:hidden;border-radius:10px;background:#dce4df;margin-bottom:18px}
.crest-app .drawer-hero img{width:100%;height:100%;object-fit:cover}
.crest-app .drawer-actions{display:flex;gap:8px;flex-wrap:wrap;margin:19px 0 15px}
.crest-app .drawer-actions button{border:1px solid #cfded5;background:#f3f8f5;color:#215844;border-radius:8px;padding:10px 13px;font-size:11px;font-weight:750}
.crest-app .drawer-actions button:hover{background:#e8f3ed}
.crest-app .drawer-actions .archive-action{color:#835d43;border-color:#eadbd0;background:#fff9f5}
.crest-app .drawer-caption{font-size:11px;line-height:1.5;color:#81938e}
.crest-app .related-units{display:grid;gap:7px;margin:12px 0}
.crest-app .related-units button{display:flex;align-items:center;justify-content:space-between;border:1px solid #e6eeea;padding:11px 12px;background:#f8faf8;border-radius:8px;font-size:12px;color:#263c46;text-align:left}
.crest-app .related-units button.active{background:#e6f2ea;border-color:#b8d6c5}
.crest-app .related-units b{font-size:12px}
.crest-app .archived-list{border-radius:10px;border:1px solid #e3e9e5;overflow:hidden;margin:12px 0 24px}
.crest-app .archived-item{display:flex;align-items:center;gap:12px;padding:13px;border-top:1px solid #edf0ee}
.crest-app .archived-item:first-child{border-top:0}
.crest-app .archived-item>span{flex:1;min-width:0}
.crest-app .archived-item strong{display:block;font-size:12px}
.crest-app .archived-item small{display:block;color:#88978f;font-size:10px;margin-top:4px}
.crest-app .archived-item button{font-size:11px;border:1px solid #cadecf;border-radius:7px;padding:8px 11px;background:#eef7f0;color:#27644d}
.crest-app .property-list-actions{display:flex;gap:9px;flex-wrap:wrap}
.crest-app .property-list-actions button{font-size:11px;border:1px solid #dbe8df;border-radius:8px;padding:10px 12px;background:#fff;color:#276548}
@media(max-width:1380px){.crest-card-photo{height:94px}.crest-property-card{min-height:247px}.crest-card-amounts>div strong{font-size:11px}.crest-card-name{font-size:11.5px}}
@media(max-width:730px){.crest-card-photo{height:108px}.crest-card-amounts{gap:5px}.crest-card-amounts>div strong{font-size:11px}.crest-property-card{min-height:248px}.crest-app .drawer{padding:19px}.crest-sidebar-portfolio{display:none}}


/* Verified photographs and carefully composed illustration fallbacks.
   This keeps the approved four-column collection layout intact. */
.crest-property-card{
  padding:7px 7px 11px;
  border-radius:13px;
  border:1px solid #e7eae8;
  background:linear-gradient(180deg,#ffffff 0%,#fff 85%,#fbfcfb 100%);
  box-shadow:0 2px 9px rgba(13,29,35,.055),0 1px 1px rgba(13,29,35,.035);
}
.crest-property-card:hover,.crest-property-card:focus-visible{
  border-color:#92bba9;
  box-shadow:0 12px 30px rgba(12,35,43,.12),0 3px 8px rgba(12,35,43,.06);
}
.crest-card-photo{
  aspect-ratio:1.85 / 1;
  height:auto!important;
  min-height:106px;
  margin:0;
  isolation:isolate;
  border-radius:8px;
  background:linear-gradient(145deg,#c3d5cd,#9fb6af);
  overflow:hidden;
}
.crest-card-photo img{
  object-fit:cover;
  object-position:center 47%;
  transition:transform .28s ease;
  filter:saturate(.86) contrast(1.04);
}
.crest-card-photo::after{
  content:"";
  position:absolute;
  inset:42% 0 0;
  background:linear-gradient(180deg,transparent,rgba(9,28,37,.35));
  z-index:0;
  pointer-events:none;
}
.crest-card-photo img,.crest-card-photo .crest-chip{position:relative}
.crest-card-photo img{z-index:0}
.crest-card-photo .crest-chip{z-index:1;position:absolute;bottom:10px;left:10px;box-shadow:0 2px 8px rgba(8,31,39,.15);border:1px solid #ffffff44}
.crest-property-card:hover .crest-card-photo img{transform:scale(1.025)}
.crest-photo-fallback{background:#c3d4ce}
.crest-card-body{padding:13px 5px 4px!important}
.crest-card-name{min-height:34px!important;max-height:36px;color:#182b3a!important;font-size:12px!important;line-height:1.4!important}
.crest-card-address{margin-top:2px!important;font-size:10px!important;letter-spacing:.06px;line-height:1.45}
.crest-card-amounts{margin:13px 0 11px!important;justify-content:space-between;gap:5px}
.crest-card-amounts>div strong{font-size:clamp(11px,.78vw,14px)!important}
.crest-card-body .crest-progress{height:8px;border-radius:12px;overflow:hidden}
.crest-card-body .crest-progress>span{border-radius:12px}
.crest-card-body .crest-card-rate{font-size:10px!important;margin:10px 0 0!important}
.crest-attention-pic{overflow:hidden;border-radius:8px;background:#c4d4cc}
.crest-attention-pic img{object-fit:cover;width:100%;height:100%}
.crest-attention-row:hover{background:#f5faf7;border-radius:8px}
.drawer-photo-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 8px}
.drawer-photo-button,.drawer-photo-row button{
 display:inline-flex;align-items:center;justify-content:center;min-height:35px;
 border:1px solid #cadae0;background:#f2f8f4;color:#28654e;border-radius:8px;
 font-size:11px;font-weight:700;padding:8px 12px;cursor:pointer
}
.drawer-photo-row button{background:#fff;color:#647481}
.drawer-photo-button:hover,.drawer-photo-row button:hover{background:#e4f1ea}
.drawer-photo-note{font-size:10px;line-height:1.55;color:#80928a;margin:0 0 19px}
@media (prefers-reduced-motion:reduce){
  .crest-card-photo img{transition:none}
  .crest-property-card:hover .crest-card-photo img{transform:none}
}
@media(max-width:730px){
 .crest-card-photo{aspect-ratio:1.65/1;min-height:98px}
 .crest-card-body{padding:10px 4px!important}
 .crest-card-amounts>div strong{font-size:12px!important}
}


/* Email inbox: configuration and honesty first, no fake green connection status. */
.crest-mail-page{max-width:1270px;margin:0 auto;display:grid;gap:20px;color:#182e3b}
.crest-mail-page h1,.crest-mail-page h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.7px}
.crest-mail-page h1{font-size:41px;margin:9px 0 9px}
.crest-mail-page h2{font-size:25px;margin:8px 0 7px}
.crest-mail-page p{color:#798b92;font-size:12px;line-height:1.75;max-width:760px;margin:0}
.crest-mail-eyebrow,.crest-mail-index{color:#58816d;font-size:10px;font-weight:780;letter-spacing:1.4px}
.crest-mail-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:15px 0 9px}
.crest-mail-status{display:flex;gap:7px;align-items:center;padding:10px 14px;border-radius:30px;background:#fff6e9;color:#a67a41;border:1px solid #f0e1c7;font-weight:680;font-size:11px;white-space:nowrap}
.crest-mail-intro,.crest-mail-status-panel,.crest-mail-test,.crest-mail-history{background:#fff;border:1px solid #e4ebe7;border-radius:14px;padding:25px 26px;box-shadow:0 4px 20px rgba(20,48,36,.035)}
.crest-mail-providers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}
.crest-mail-provider{text-align:left;background:#fafcfa;border:1px solid #e7ebe8;border-radius:11px;padding:19px 16px;min-height:139px;display:flex;flex-direction:column;gap:7px;color:#183141;transition:border .15s,box-shadow .15s}
.crest-mail-provider:hover,.crest-mail-provider.active{border-color:#6aa88a;box-shadow:0 4px 18px #0c573710;background:#f7fbf8}
.crest-mail-provider.active{box-shadow:inset 0 0 0 1px #81b598}
.crest-mail-provider-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:#e8f2ec;color:#336c50;margin-bottom:4px}
.crest-mail-provider strong{font-size:12px;line-height:1.4}
.crest-mail-provider small{color:#91a29b;font-size:10px}
.crest-mail-provider-info{background:#edf5f0;color:#47745c;border-radius:8px;padding:14px 16px;margin-top:14px;font-size:12px;line-height:1.65}
.crest-mail-health-row{display:flex;align-items:center;gap:10px;padding:17px 18px;border:1px solid #f0e8d9;background:#fffaf1;border-radius:11px;margin-top:20px}
.crest-mail-health-row strong{font-size:13px;color:#725631}
.crest-mail-health-row>span:last-child{margin-left:auto;color:#988674;font-size:11px}
.crest-mail-dot{width:10px;height:10px;border-radius:50%;background:#d5a75e}
.crest-mail-health-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:17px}
.crest-mail-health-details span{font-size:11px;color:#819289;border-left:1px solid #e7efea;padding:4px 14px}
.crest-mail-health-details span:first-child{border-left:0;padding-left:0}
.crest-mail-health-details strong{display:block;margin-top:9px;color:#405850;font-size:13px}
.crest-mail-test{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.crest-mail-test>div:first-child{flex:1;min-width:240px}
.crest-mail-upload{background:#193d32;color:#fff;border:1px solid #193d32;border-radius:8px;display:flex;align-items:center;gap:9px;font-size:12px;font-weight:680;padding:14px 18px;cursor:pointer}
.crest-mail-upload:hover{background:#245a47}
.crest-mail-feedback{width:100%;font-size:11px;color:#4d8064;line-height:1.5}
.crest-mail-history h2{margin-bottom:6px}
.crest-mail-loading{margin-top:19px;color:#7c9284}
.crest-mail-empty{border:1px dashed #cbdad0;border-radius:11px;min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;padding:22px;margin-top:16px;color:#78978b}
.crest-mail-empty strong{color:#375846}
.crest-mail-empty p{max-width:460px}
.crest-mail-action{background:#e7f1eb;border:1px solid #c3ddcc;color:#24654b;border-radius:8px;padding:10px 15px;font-size:11px;font-weight:700;margin-top:8px}
.crest-mail-records{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.crest-mail-record{display:flex;align-items:start;gap:14px;background:#f8faf8;border:1px solid #e8efea;border-radius:10px;padding:15px}
.crest-mail-record-icon{width:39px;height:39px;border-radius:9px;display:grid;place-items:center;background:#e6f0e8;color:#2d7653;flex:none}
.crest-mail-record-text{flex:1;min-width:0}
.crest-mail-record-text strong{font-size:12px;color:#284838;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crest-mail-record-text small{color:#879b90;display:block;margin:6px 0;font-size:10px}
.crest-mail-file{display:inline-flex;gap:4px;background:#e9efec;color:#5b7264;padding:5px 8px;margin:3px 4px 3px 0;border-radius:5px;font-size:10px}
.crest-mail-result{font-size:10px;color:#477b5b;background:#e3f2e7;padding:7px 9px;border-radius:5px;white-space:nowrap;text-transform:capitalize}
.crest-mail-result.is-issue{color:#a16a2f;background:#fff0df}
@media(max-width:1000px){.crest-mail-providers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .crest-mail-page{gap:13px}.crest-mail-head{display:block}.crest-mail-head h1{font-size:30px}
 .crest-mail-status{margin-top:13px;width:max-content}.crest-mail-providers{gap:8px}
 .crest-mail-provider{padding:13px 10px;min-height:126px}.crest-mail-intro,.crest-mail-status-panel,.crest-mail-test,.crest-mail-history{padding:18px 14px}
 .crest-mail-health-details{display:block}.crest-mail-health-details span{display:block;border:0;padding:8px 0}
 .crest-mail-health-row{flex-wrap:wrap}.crest-mail-health-row>span:last-child{margin-left:0}
 .crest-mail-record{padding:10px;flex-wrap:wrap}
}

.crest-mail-status.is-connected{background:#e9f6ec;color:#26774d;border-color:#cde9d5}


/* Real provider OAuth controls; no credential entry boxes or misleading success state. */
.crest-mail-connect-row{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-top:15px}
.crest-mail-connect-row button{border:0;background:#143e31;color:#fff;border-radius:8px;padding:12px 17px;font-size:12px;font-weight:720;min-height:41px}
.crest-mail-connect-row button:not(:disabled):hover{background:#1e6349}
.crest-mail-connect-row button:disabled{cursor:not-allowed;background:#e7ece9;color:#84958b;border:1px solid #dce8df}
.crest-mail-connect-row span{font-size:11px;color:#7d9088;line-height:1.5;flex:1;min-width:180px}
.crest-mail-disconnect{border:1px solid #dfebe3;border-radius:8px;padding:9px 12px;background:#fff;font-size:11px;color:#547063}
.crest-mail-disconnect:not(:disabled):hover{background:#f5faf7;border-color:#b1ccba}

/* Landlord navigation has three destinations; administration stays available
   under an explicit disclosure, including on touch and narrow displays. */
.crest-utility-menu{margin:15px 9px 0;border-top:1px solid #2c4250;padding-top:13px;color:#9caebc}
.crest-utility-menu summary{list-style:none;display:flex;gap:12px;align-items:center;
  border-radius:8px;padding:11px 13px;min-height:42px;cursor:pointer;color:#a9bbc7;
  font-size:12px;font-weight:600}
.crest-utility-menu summary::-webkit-details-marker{display:none}
.crest-utility-menu summary:hover,.crest-utility-menu summary:focus-visible{background:#263b4d;color:#fff;outline-offset:2px}
.crest-utility-menu summary svg:last-child{margin-left:auto;transition:transform .16s ease}
.crest-utility-menu[open] summary svg:last-child{transform:rotate(90deg)}
.crest-utility-links{padding:6px 0 0}
.crest-utility-links .crest-side-link{font-size:11px;color:#a9bbc7;min-height:40px;padding-left:15px}
.crest-utility-links .crest-side-link>svg{width:16px;height:16px}
.crest-utility-links .crest-side-link.is-active{color:#fff}
@media(max-width:730px){
  .crest-navigation{flex-wrap:wrap;overflow:visible;align-items:flex-start}
  .crest-utility-menu{margin:0;padding:0;border:0}
  .crest-utility-menu summary{min-height:39px;padding:5px 10px;font-size:11px;gap:6px}
  .crest-utility-menu summary svg{width:15px;height:15px}
  .crest-utility-menu[open]{flex:1 1 100%}
  .crest-utility-links{display:flex;flex-wrap:wrap;gap:3px;padding-top:6px}
  .crest-utility-links .crest-side-link{min-height:36px;padding:6px 9px}
}
@media(prefers-reduced-motion:reduce){
  .crest-utility-menu summary svg:last-child{transition:none}
}

/* Fictional demo only: an illustrative UK-terrace photograph from Unsplash,
   not evidence of the identity of any portfolio property. Never request remote
   photographic assets when rendering a real customer's financial workspace.
   Local architectural art remains below this layer for offline fallback. */
.crest-photo-hero.crest-demo-photo{
  background:
    linear-gradient(90deg,rgba(9,23,35,.92),rgba(10,26,39,.52) 49%,rgba(10,26,39,.19)),
    url("https://images.unsplash.com/photo-1566515610329-94f02c3707d6?auto=format&fit=crop&w=1600&h=440&q=78") center 41%/cover no-repeat,
    url("/static/uk-terrace.svg") center 43%/cover no-repeat,
    #263b49;
}


/* Collection Map: actionable landlord filters without a false geographic map. */
.crest-board-controlbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 2px 16px}
.crest-board-filters{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid #e1e8e5;background:#f3f6f4;border-radius:9px}
.crest-board-filters button{border:0;background:transparent;border-radius:7px;color:#566a70;font-size:11px;font-weight:650;min-height:33px;padding:7px 12px;white-space:nowrap}
.crest-board-filters button:hover{background:#e5eeea;color:#163c32}
.crest-board-filters button.is-active{background:#173e3a;color:#fff;box-shadow:0 2px 8px #0a31201c}
.crest-board-count{font-size:11px;color:#6c7c86;font-variant-numeric:tabular-nums}
.crest-board-pagination{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.crest-board-pagination button{border:1px solid #dbe4e0;background:#fff;border-radius:7px;padding:7px 11px;color:#255e4c;font-size:11px;font-weight:650}
.crest-board-pagination button:hover:not(:disabled){border-color:#89b4a1;background:#f4faf6}
.crest-board-pagination button:disabled{opacity:.4;cursor:not-allowed}
.crest-board-pagination span{font-size:10px;color:#6b7982;white-space:nowrap}
.crest-board-pagination button[data-page="properties"]{border:0;background:transparent;display:flex;align-items:center;gap:5px}
.crest-board-filters button:focus-visible,.crest-board-pagination button:focus-visible{outline:3px solid #d9aa58;outline-offset:2px}
@media(max-width:760px){.crest-board-controlbar{align-items:flex-start}.crest-board-filters{max-width:100%;overflow-x:auto}.crest-board-filters button{padding:7px 9px}.crest-under-grid{align-items:flex-start;flex-direction:column}.crest-board-pagination{justify-content:flex-start}}


/* Evidence-aware setup prompt: no invented historical contractual rents. */
.crest-schedule-warning{border:1px solid #e8d7a8;border-left:4px solid #c49143;border-radius:11px;background:#fffaf0;padding:13px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;box-shadow:0 2px 8px #162d1c07}
.crest-schedule-warning strong{font-size:12px;color:#815c23}
.crest-schedule-warning span{font-size:11px;color:#5d6970;flex:1;min-width:180px}
.crest-schedule-warning button{background:#fff;border:1px solid #d8c08e;border-radius:7px;color:#775420;min-height:33px;padding:7px 10px;font-weight:700;font-size:11px}
.crest-schedule-warning button:hover{background:#f9edcf}
.crest-schedule-warning button:focus-visible{outline:3px solid #d9aa58;outline-offset:2px}
.crest-card-amounts strong{overflow-wrap:anywhere}


/* Final-pass landlord control-room polish.
   Keep financial statuses evidence-led; gold indicates navigation and focus,
   never a fabricated paid/unpaid classification. */
.crest-side-link{position:relative}
.crest-side-link.is-active{
  background:linear-gradient(90deg,#294154,#263a49);
  box-shadow:inset 3px 0 0 var(--crest-gold);
}
.crest-side-link.is-active>svg{stroke:#e9c586}
.crest-side-link:focus-visible,
.crest-utility-menu summary:focus-visible,
.crest-admin-links button:focus-visible,
.crest-month-picker button:focus-visible,
.crest-account button:focus-visible,
.crest-property-card:focus-visible{
  outline:3px solid #e4b974;
  outline-offset:2px;
}
.crest-hero-copy h1{text-wrap:balance}
.crest-month-picker:focus-within{box-shadow:0 5px 23px #16222b24,0 0 0 2px #e6be79}
.crest-property-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .crest-property-card:hover{transform:translateY(-2px);box-shadow:0 9px 24px #152e3d1b}
}
@media (prefers-reduced-motion:reduce){
  .crest-property-card,.crest-side-link{transition:none!important}
}

/* --------------------------------------------------------------------------
   RentCrest / October 2026 editorial reference implementation.
   Visual baseline: approved four-metric, UK-street hero, airy collection cards.
   Keep every financial number and status API-derived. The Pexels demo images
   are fictional illustrations, never customer-verified address photography.
   -------------------------------------------------------------------------- */
.crest-app{
  --crest-ink:#152239;
  --crest-navy:#0b1b2e;
  --crest-gold:#d7ab60;
  --crest-stage:#f5f6f5;
  --crest-borders:#e9edf0;
  grid-template-columns:244px minmax(0,1fr);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
  color:#17273d;
  font-size:13px;
}
.crest-sidebar{
  background:linear-gradient(166deg,#0d2034 0%,#0b192a 72%,#0a1828 100%);
  padding:27px 15px 19px;
  box-shadow:inset -1px 0 rgba(255,255,255,.035);
}
.crest-brand{margin:0 10px 56px;gap:10px}
.crest-logo-symbol{width:42px;height:49px}
.crest-brand-name{font-size:31px;letter-spacing:-1.5px}
.crest-brand-sub{font-size:8px;letter-spacing:1.65px;color:#d3dbe4}
.crest-navigation{gap:10px}
.crest-side-link{
  min-height:52px;
  gap:13px;
  border-radius:9px;
  font-size:13px;
  font-weight:640;
  color:#edf2f7;
  padding:0 16px;
}
.crest-side-link.is-active{
  color:white;
  background:linear-gradient(90deg,#273b51,#203347);
  box-shadow:inset 3px 0 #d9aa59,0 1px 0 #ffffff09;
}
.crest-side-link.is-active>svg{stroke:#e9b956}
.crest-navigation>.crest-side-link:nth-child(3){margin-bottom:17px}
.crest-utility-menu{border-top:1px solid #2b3c4d;padding-top:15px}
.crest-utility-menu summary{padding:9px 15px;min-height:40px;letter-spacing:.1px;font-weight:610;color:#c3d1dd}
.crest-utility-menu summary svg:first-child{opacity:.8}
.crest-utility-menu .crest-side-link{min-height:36px;font-size:11px;font-weight:510;color:#afbfcd;padding-left:17px;gap:12px}
.crest-utility-menu .crest-side-link.is-active{color:white}
.crest-utility-links{padding-top:6px}
.crest-sidebar-portfolio{background:transparent;border:0;border-top:1px solid #263a4b;border-radius:0;margin:0 9px 12px;padding:11px 1px 2px}
.crest-admin-links{padding:0 12px 18px}
.crest-admin-links button{font-size:11px;color:#a7b6c5;min-height:32px;gap:11px}
.crest-account{border-color:#34475a;margin:0 6px}
.crest-work{background:#f5f6f6}
.crest-photo-hero{
  height:209px;
  padding:34px 36px 0 44px;
  background:
    linear-gradient(90deg,rgba(8,22,35,.94) 0%,rgba(11,28,40,.72) 48%,rgba(7,25,33,.48) 100%),
    url("/static/uk-terrace.svg") center 43%/cover no-repeat,
    #142a3b;
}
.crest-photo-hero.crest-demo-photo{
  background:
    linear-gradient(90deg,rgba(8,22,35,.92),rgba(10,23,32,.52) 53%,rgba(10,22,30,.34)),
    url("https://images.unsplash.com/photo-1566515610329-94f02c3707d6?auto=format&fit=crop&w=1800&q=82") center 48%/cover no-repeat,
    url("/static/uk-terrace.svg") center 43%/cover no-repeat,
    #203744;
}
.crest-hero-kicker{
  font-size:11px;
  color:#e5b65f;
  letter-spacing:2.5px;
  font-weight:780;
  margin-bottom:5px;
}
.crest-hero-copy h1{
  font-size:clamp(32px,3.15vw,51px);
  letter-spacing:-1.45px;
  line-height:1.04;
  text-shadow:0 3px 14px #0006;
}
.crest-hero-copy p{
  letter-spacing:.15px;
  text-transform:none;
  color:#e6edf1;
  font-size:16px;
  font-weight:510;
  margin-top:9px;
}
.crest-month-picker{height:44px;border-radius:10px;padding:4px;box-shadow:0 7px 22px #071b293d}
.crest-month-picker span{font-size:12px}
.crest-main.is-overview{padding:0 15px 30px!important;margin-top:-57px!important}
.crest-columns{
  grid-template-columns:minmax(0,1fr) minmax(330px,385px);
  gap:14px;
}
.crest-col-left,.crest-col-right{gap:14px}
.crest-paper{
  border:1px solid #eef0f0;
  border-radius:16px;
  box-shadow:0 5px 22px rgba(20,32,46,.045);
}
.crest-paper h2{font-size:24px;letter-spacing:-.5px}
.crest-paper p{font-size:12px}
.crest-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:11px;
  height:auto;
  min-height:155px;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  padding:0;
  overflow:visible;
}
.crest-kpi{
  background:#fff;
  padding:22px 17px 17px;
  min-width:0;
  border:1px solid #edf0ef;
  border-radius:15px;
  box-shadow:0 5px 18px #1a263512;
  display:flex;
  flex-direction:column;
  gap:0;
}
.crest-kpi+.crest-kpi{border-left:1px solid #edf0ef}
.crest-kpi-due{background:linear-gradient(135deg,#fff 44%,#fffcf6)}
.crest-kpi-collected{background:linear-gradient(135deg,#fff 48%,#f4faf7)}
.crest-kpi-missing{background:linear-gradient(135deg,#fff 48%,#fff6f5)}
.crest-kpi-rate{background:#fff}
.crest-kpi-head{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  color:#25364b;
  font-size:11px;
  font-weight:760;
  line-height:1.18;
  white-space:normal;
  min-height:31px;
}
.crest-kpi-head>span:nth-child(2){flex:1;min-width:0}
.crest-kpi-icon{
  width:30px;height:30px;display:grid;place-items:center;flex:none;
  border:1px solid #f0e4d1;
  border-radius:50%;color:#ba893d;background:#fffaf1;
}
.crest-kpi-collected .crest-kpi-icon{border-color:#dfeee6;color:#248662;background:#f5fbf7}
.crest-kpi-missing .crest-kpi-icon{border-color:#f2dcd9;color:#c75149;background:#fff7f5}
.crest-kpi-rate .crest-kpi-icon{border-color:#e5ebf2;color:#18324b;background:#f8fafc}
.crest-kpi-head .crest-info{flex:none;color:#98a5b4;font-size:12px}
.crest-kpi strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(25px,2.4vw,41px);
  font-weight:400;
  letter-spacing:-1.2px;
  line-height:1.1;
  margin:14px 0 8px;
  white-space:nowrap;
}
.crest-kpi-due strong{color:#a26e24}
.crest-kpi-collected strong{color:#147a4d}
.crest-kpi-missing strong{color:#c7473b}
.crest-kpi-rate strong{color:#142139}
.crest-kpi>small{
  font-size:10px;
  color:#728095;
  line-height:1.35;
  margin-top:auto;
  display:block;
  min-height:26px;
}
.crest-kpi-rate .crest-rate-track{margin:0 0 9px;height:9px;border-radius:10px}
.crest-rate-track i{background:linear-gradient(90deg,#08794f,#6dae8e)}
.crest-board{padding:19px 18px 20px;border-radius:16px}
.crest-panel-top{margin-bottom:15px}
.crest-board .crest-panel-top h2{font-size:28px}
.crest-board .crest-panel-top p{margin-top:4px;color:#8290a3}
.crest-board-tools{padding-top:10px}
.crest-legend{gap:11px;flex-wrap:wrap;justify-content:flex-end}
.crest-legend>span{font-size:9px;color:#718091}
.crest-board-controlbar{gap:10px;margin-bottom:14px;display:flex;align-items:center;flex-wrap:wrap}
.crest-board-filters{
  background:#f2f4f6;
  border-color:#e5e9eb;
  padding:3px;
  border-radius:10px;
}
.crest-board-filters button{
  border-radius:8px;
  padding:8px 10px;
  font-size:10px;
  min-height:36px;
  font-weight:720;
  color:#415169;
}
.crest-board-filters button.is-active{
  background:#10233b;
  color:white;
  box-shadow:0 4px 10px #0a1d321b;
}
.crest-board-utilities{display:flex;align-items:center;gap:8px;margin-left:auto;min-width:0}
.crest-search-wrap,.crest-sort-wrap{
  border:1px solid #e1e7eb;
  border-radius:9px;
  background:#fff;
  display:flex;align-items:center;min-height:39px;gap:7px;
  padding:0 10px;color:#64768c;
  box-shadow:0 1px 2px #101d2808;
}
.crest-search-wrap input{
  min-width:0;width:120px;border:0;outline:0;color:#24394b;
  background:transparent;font:inherit;font-size:11px;
}
.crest-search-wrap:focus-within,.crest-sort-wrap:focus-within{outline:2px solid #dcb46d;outline-offset:2px}
.crest-sort-wrap{font-size:10px;white-space:nowrap}
.crest-sort-wrap select{font:inherit;font-size:10px;color:#29384b;border:0;outline:0;background:transparent;max-width:125px}
.crest-board-count{color:#8491a0;font-size:9px;white-space:nowrap}
.crest-property-grid{gap:13px}
.crest-property-card{
  padding:0;
  border:1px solid #e7ebee;
  border-radius:11px;
  min-height:242px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 3px 9px #081b2910;
}
.crest-property-card:hover,.crest-property-card:focus-visible{border-color:#c2d4cd}
.crest-card-photo{height:83px;margin:0;border-radius:0;background:#c8d3d0}
.crest-card-photo:after{background:linear-gradient(0deg,#0e21324e,transparent 58%)}
.crest-card-photo img{object-fit:cover}
.crest-card-photo .crest-chip{font-size:9px;left:9px;bottom:8px;min-height:23px}
.crest-chip.is-collected{background:#279763}
.crest-chip.is-partial{background:#e4a436}
.crest-chip.is-missing{background:#d84f46}
.crest-chip.is-unknown{background:#778797}
.crest-card-body{padding:11px 13px 14px}
.crest-card-name{color:#14243a;font-size:12px;line-height:1.25;min-height:0;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.crest-card-address{font-size:10px;margin-top:5px;color:#8693a5}
.crest-card-amounts{
  border-top:1px solid #edf0f3;
  padding-top:10px;
  margin:11px 0 8px;
  gap:8px;
  justify-content:space-between;
}
.crest-card-amounts>div{min-width:0;flex:0 1 auto}
.crest-card-amounts>div span{font-size:9px;color:#687b8e}
.crest-card-amounts>div strong{font-size:13px;color:#182b45;letter-spacing:-.2px}
.crest-card-amounts>div:first-child strong{color:#168151}
.crest-card-amounts .crest-of{display:none}
.crest-card-body .crest-progress{height:8px}
.crest-card-body .crest-card-rate{margin-top:8px;color:#8090a2;font-size:10px}
.crest-under-grid{border-top:1px solid #f0f2f4;margin-top:13px;padding:12px 3px 0}
.crest-under-grid span{font-size:9px;color:#8b98a6}
.crest-attention{min-height:0;padding-bottom:8px}
.crest-side-panel-head{padding:18px 18px 12px}
.crest-side-panel-head h2{font-size:23px}
.crest-side-panel-head>button{font-size:10px;color:#345779}
.crest-alert-pill{background:#d9514a}
.crest-attention-list{padding:0 17px 3px}
.crest-attention-row{padding:12px 1px;gap:10px;min-height:71px}
.crest-attention-row .crest-attention-pic{width:51px;height:52px;border-radius:7px;background:#dce5e5}
.crest-attention-text strong{color:#14243a;font-size:11px}
.crest-attention-text>span{font-size:11px;color:#c17c2f}
.crest-attention-text small{font-size:9px}
.crest-agents{min-height:0;padding-bottom:11px}
.crest-agent-row{grid-template-columns:minmax(83px,1fr) minmax(0,1.25fr) 30px;margin:13px 0}
.crest-agent-row>span{font-size:10px}
.crest-agent-row strong{font-size:10px;margin-bottom:5px}
.crest-summary{min-height:0}
.crest-summary-metrics{padding:4px 12px 14px}
.crest-summary-metrics>div{gap:6px;padding:9px 2px}
.crest-summary-metrics strong{font-size:23px}
.crest-summary-metrics span{font-size:9px}
.crest-schedule-warning{box-shadow:none;border-radius:11px;padding:9px 12px;min-height:38px}
.crest-schedule-warning strong{font-size:11px}
.crest-schedule-warning span{font-size:10px}
.crest-trend{padding:18px}
.crest-evidence-note{max-width:100%;padding:12px 5px 5px}
@media (max-width:1570px){
  .crest-columns{grid-template-columns:minmax(0,1fr) minmax(320px,345px)}
  .crest-property-grid{gap:9px}
  .crest-kpis{gap:8px}
  .crest-kpi{padding:17px 11px 14px}
  .crest-kpi-head{font-size:10px;gap:5px}
  .crest-kpi-icon{width:27px;height:27px}
  .crest-kpi strong{font-size:clamp(25px,2.3vw,36px)}
  .crest-board-utilities{flex-basis:auto;justify-content:flex-end}
  .crest-board-count{margin-left:auto}
}
@media (max-width:1180px){
  .crest-app{grid-template-columns:213px minmax(0,1fr)}
  .crest-sidebar{padding:20px 10px}
  .crest-brand{margin-bottom:34px}
  .crest-columns{grid-template-columns:minmax(0,1fr)}
  .crest-col-right{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .crest-summary{grid-column:1/-1}
  .crest-hero-copy h1{font-size:39px}
  .crest-kpi{padding:18px}
  .crest-kpi strong{font-size:clamp(28px,3vw,40px)}
  .crest-board-utilities{flex-basis:auto}
}
@media (max-width:730px){
  .crest-app{display:block}
  .crest-sidebar{position:relative;height:auto;min-height:0;padding:13px}
  .crest-brand{margin:0 0 12px}
  .crest-navigation{gap:3px}
  .crest-navigation>.crest-side-link:nth-child(3){margin-bottom:0}
  .crest-utility-menu{padding-top:3px}
  .crest-sidebar-bottom{display:none}
  .crest-photo-hero{height:220px;padding:20px 17px;display:flex;flex-direction:column;gap:11px}
  .crest-hero-kicker{font-size:9px}
  .crest-hero-copy h1{font-size:30px}
  .crest-hero-copy p{font-size:13px}
  .crest-month-picker{align-self:flex-start}
  .crest-main.is-overview{margin-top:-30px!important;padding:0 10px 22px!important}
  .crest-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .crest-kpi{padding:14px 12px}
  .crest-kpi strong{font-size:clamp(24px,6vw,35px)}
  .crest-kpi-head{font-size:10px}
  .crest-col-right{display:flex;flex-direction:column}
  .crest-board{padding:14px 11px}
  .crest-board .crest-panel-top h2{font-size:23px}
  .crest-board-utilities{flex:1 1 100%;justify-content:stretch}
  .crest-search-wrap{flex:1}
  .crest-search-wrap input{width:100%}
  .crest-board-count{margin-left:0}
  .crest-property-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .crest-card-photo{height:104px}
  .crest-card-body{padding:10px}
}
@media (max-width:375px){
  .crest-kpi-head{font-size:9px}
  .crest-kpi-icon{width:24px;height:24px}
  .crest-card-amounts>div strong{font-size:11px}
}
@media (prefers-reduced-motion:reduce){
  .crest-property-card{transition:none!important}
  .crest-property-card:hover{transform:none}
}

/* Photo overlays are limited to an entirely synthetic demo portfolio.
   Actual properties render only verified owner uploads or bundled artwork.
   CSS backgrounds allow the local illustration to remain visible offline. */
.crest-app.is-demo .crest-card-photo:not(.is-verified)::before,
.crest-app.is-demo .crest-attention-pic:not(.is-verified)::before{
  content:"";position:absolute;inset:0;z-index:1;
  background-position:center;background-size:cover;background-repeat:no-repeat;
  pointer-events:none;
}
.crest-app.is-demo .crest-card-photo.crest-visual-0:not(.is-verified)::before,
.crest-app.is-demo .crest-attention-pic.crest-visual-0:not(.is-verified)::before{
  background-image:url("https://images.pexels.com/photos/12504321/pexels-photo-12504321.jpeg?auto=compress&cs=tinysrgb&w=540");
}
.crest-app.is-demo .crest-card-photo.crest-visual-1:not(.is-verified)::before,
.crest-app.is-demo .crest-attention-pic.crest-visual-1:not(.is-verified)::before{
  background-image:url("https://images.pexels.com/photos/9828295/pexels-photo-9828295.jpeg?auto=compress&cs=tinysrgb&w=540");
}
.crest-app.is-demo .crest-card-photo.crest-visual-2:not(.is-verified)::before,
.crest-app.is-demo .crest-attention-pic.crest-visual-2:not(.is-verified)::before{
  background-image:url("https://images.pexels.com/photos/37296257/pexels-photo-37296257.jpeg?auto=compress&cs=tinysrgb&w=540");
}
.crest-app.is-demo .crest-card-photo.crest-visual-3:not(.is-verified)::before,
.crest-app.is-demo .crest-attention-pic.crest-visual-3:not(.is-verified)::before{
  background-image:url("https://images.unsplash.com/photo-1566515610329-94f02c3707d6?auto=format&fit=crop&w=540&q=80");
}
.crest-app.is-demo .crest-card-photo:not(.is-verified)::after{z-index:2}
.crest-app.is-demo .crest-card-photo .crest-chip{z-index:3}
.crest-app.is-demo .crest-attention-pic{position:relative;isolation:isolate;overflow:hidden}

.crest-utility-secondary{
  margin:8px 5px 3px;
  border-top:1px solid #2b3d4c;
  padding-top:8px;
}
.crest-utility-secondary>summary{
  display:flex;align-items:center;min-height:29px;
  font-size:10px;font-weight:550;letter-spacing:.1px;
  color:#8499aa;padding:3px 10px;cursor:pointer;
}
.crest-utility-secondary>summary:hover{color:#fff}
.crest-utility-secondary .crest-side-link{padding-left:13px}
.crest-utility-secondary>summary:focus-visible{
  outline:2px solid #d6aa60;outline-offset:2px;
}


/* ==========================================================================
   RentCrest approved large-monitor showcase (2026-10-23).
   Strictly >1920 CSS px: existing laptop styles are left entirely untouched.

   The earlier 4K treatments were either a ~2.3x giant dashboard, a tiny
   centered 1700px island, or tiny controls in a stretched grid. This adapts
   the approved editorial composition proportionally and never changes the
   laptop display or the underlying ledger.
   ========================================================================== */
@media (min-width:1921px) {
  /* Use a measured interpolation rather than zoom=viewport/1700.
     1921: 1.13, 2560: 1.29, 3840: 1.61.
     Full viewport remains available, with no outer max-width/letterboxing. */
  .crest-app {
    --crest-wide-scale: clamp(1.12942, calc(0.65 + 100vw / 4000px), 1.62);
    grid-template-columns:244px minmax(0,1fr);
  }

  /* Keep all four metrics with the same hierarchy as the approved mockup. */
  .crest-main.is-overview {
    padding-inline: 16px !important;
  }
  .crest-columns {
    grid-template-columns:minmax(0,1fr) minmax(365px,385px);
    gap:14px;
  }
  .crest-kpis {
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .crest-kpi {
    padding:20px 15px 17px;
  }
  .crest-kpi strong {
    font-size:clamp(32px,2.05vw,41px);
  }

  /* Six purposeful cards per row, rather than giant four-column cards or
     eight/nine postage stamps. JS sets six cards per *page* in this mode. */
  .crest-property-grid {
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px;
  }
  .crest-board {
    padding:18px 17px 16px;
  }
  .crest-property-card {
    min-width:0;
  }
  .crest-card-photo {
    aspect-ratio: 1.63 / 1;
    min-height:112px;
  }
  .crest-card-name {
    overflow-wrap: anywhere;
  }
  .crest-col-right {
    min-width:0;
  }

  /* SVG axes and text must not be stretched horizontally on large monitors.
     Keep the chart's actual 775:142 drawing aspect ratio, rather than forcing
     the same drawing into a very wide 108px-tall strip. */
  .crest-trend-graphic {
    height:auto;
    min-height:0;
  }
  .crest-trend-graphic svg {
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:1200 / 150;
    max-height:none;
  }
  .crest-trend {
    min-height:0;
    padding-bottom:15px;
  }
}
@media (min-width:3100px) {
  .crest-columns {
    grid-template-columns:minmax(0,1fr) minmax(400px,420px);
  }
}


/* Needs Attention is a single source-driven monitor, not another dashboard.
   Only its own route uses these selectors: Rent Overview is untouched. */
.crest-collection-signal{margin-bottom:15px;display:flex;align-items:center}
.crest-collection-signal p{flex:1;min-width:0}
.crest-collection-signal .btn{margin-left:auto;white-space:nowrap;flex:none}
.monitor-pulse{display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  padding:12px 14px;margin:0 0 15px;background:#f6f9f7;
  border:1px solid #e5ede8;border-radius:9px}
.monitor-pulse span{font-size:11px;color:#60746a;white-space:normal}
.monitor-pulse strong{color:#213e38;font-weight:760;font-variant-numeric:tabular-nums}
.monitor-actions{display:flex;align-items:center;gap:7px;justify-content:flex-end;flex-wrap:wrap}
.monitor-review{font-size:11px!important;padding:8px 12px!important;white-space:nowrap}
.monitor-edit{white-space:nowrap}
.monitor-review:focus-visible,.crest-collection-signal .btn:focus-visible{
  outline:3px solid #d1ac68;outline-offset:2px
}
@media(max-width:1100px){
 .monitor-property-main{grid-template-columns:minmax(0,1.6fr) minmax(130px,1fr) minmax(100px,1fr);gap:11px}
 .monitor-actions{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:730px){
 .crest-collection-signal{flex-wrap:wrap}
 .crest-collection-signal .btn{margin:5px 0 0 0}
 .monitor-property-main{grid-template-columns:minmax(0,1fr) auto}
 .monitor-actions{grid-column:1/-1}
 .monitor-pulse{gap:7px 15px}
}
