/* Build 105: compact, aligned loan forms and accessible booking calendars. */
.compact-action{justify-self:start;width:auto;min-width:0;padding:.55rem 1rem;background:#0a705b;color:white;border:1px solid #0a705b}
.rental-fields,.loan-date-note{grid-column:1/-1}.rental-fields[hidden]{display:none!important}
.linked-contact-dialog{width:min(560px,calc(100vw - 32px));max-height:90vh;overflow:auto;border:1px solid #c9dad3;border-radius:16px;padding:24px}.linked-contact-dialog::backdrop{background:#163d3566}
.report-options{display:grid;grid-template-columns:minmax(200px,360px);gap:16px}.report-options>label{display:flex;flex-direction:column;gap:6px}.report-options>.disposal-report-results{grid-column:1/-1;max-width:100%;overflow:auto}.report-options>.actions{display:flex;flex-wrap:wrap;gap:10px}.report-options>button{justify-self:start;min-width:180px}.disposal-report-dialog .report-options{grid-template-columns:minmax(200px,360px)}.disposal-report-results{width:100%}.report-options:has(.disposal-report-results){display:flex;flex-direction:column;align-items:stretch}.report-options>label{width:min(360px,100%)}.report-options>button{align-self:flex-start}
.loan-history-actions{display:grid;grid-template-columns:minmax(100px,1fr) repeat(2,minmax(150px,auto));align-items:center;gap:10px;margin:10px 0}.loan-history-actions button{height:100%;min-height:44px;padding:10px 14px}.loan-calendar-months{display:grid;gap:14px}.year-view .loan-calendar-months{grid-template-columns:repeat(4,minmax(0,1fr))}.loan-calendar table{width:100%;table-layout:fixed;border-collapse:collapse}.loan-calendar th{font-size:.75rem;padding:4px 0;overflow:hidden}.loan-calendar td{padding:2px}.loan-calendar h4{margin:8px 0}.calendar-day{display:block;width:100%;min-height:34px;padding:4px 0;border-radius:5px;border:1px solid transparent;font-size:.85rem}.calendar-day.today{outline:2px solid #0a705b}.available{background:#f4f7f5!important;color:#17332d!important}.on-loan{background:#c8e4da!important;color:#12382d!important}.reserved{background:#dce7ff!important;color:#173765!important}.mixed{background:#e9ddfa!important;color:#493067!important}.history{background:#e9eeeb!important;color:#43564d!important}.conflict{background:#ffd7d7!important;color:#8b1616!important}.calendar-legend{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.calendar-legend span{padding:5px 8px;border-radius:5px}.loan-calendar-details{white-space:pre-line;border:1px solid #c9dad3;padding:12px;border-radius:8px}.year-view .calendar-day{min-height:26px}.loan-calendar button:focus-visible{outline:3px solid #2979bf}
@media(max-width:1100px){.year-view .loan-calendar-months{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:780px){.year-view .loan-calendar-months{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-history-actions{grid-template-columns:1fr 1fr}.loan-history-actions strong{grid-column:1/-1}}@media(max-width:460px){.year-view .loan-calendar-months{grid-template-columns:1fr}}

/* Build 106: consistent navigation and adjacent URL actions. */
.sidebar nav button{border:0;box-shadow:none}
.website-input-row{display:flex;align-items:center;gap:8px;min-width:0}
.website-input-row input{flex:1;min-width:0;width:100%}
.website-open-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:#075b4b;font-weight:700;text-decoration:none}
.website-open-link:focus-visible{outline:2px solid #075b4b;outline-offset:2px}

/* Build 107 rental panels and compact, aligned forms */
.loan-panel{border:1px solid #d8e4dd;border-radius:8px;margin:12px 0;padding:0 16px 16px}.loan-panel:not([open]){padding-bottom:0}.loan-panel>summary{font-size:1.35rem;font-weight:700;color:#086e59;cursor:pointer;padding:16px 0}.loan-panel section{margin:14px 0}.loan-row-actions{white-space:nowrap}.loan-history-actions{display:flex;gap:8px;flex-wrap:wrap}.loan-editor{display:flex;flex-direction:column;gap:12px;max-width:700px}.loan-editor>label,.loan-editor .rental-fields>label,.report-options>label{display:grid;grid-template-columns:minmax(150px,210px) minmax(0,1fr);gap:16px;align-items:center}.loan-editor input,.loan-editor textarea,.loan-editor select,.report-options input,.report-options select{min-width:0;width:100%;box-sizing:border-box}.loan-editor label:has(input[type=checkbox]),.report-options label:has(input[type=checkbox]){display:flex;gap:12px}.loan-editor input[type=checkbox],.report-options input[type=checkbox]{width:20px;height:20px;flex:none;margin:0}.rental-fields{display:flex;flex-direction:column;gap:12px}.rental-fields[hidden]{display:none}.loan-editor button,.loan-form-actions button,.linked-contact-dialog button{width:auto;align-self:flex-start;padding:9px 16px;font-size:1rem;min-height:40px}.loan-editor .compact-action{background:#086e59;color:white}.loan-form-actions{display:flex;gap:12px}.report-options{display:flex;flex-direction:column;align-items:stretch;gap:12px}.report-options>label{max-width:650px}.report-options>button{width:auto;align-self:flex-start}.report-options [hidden]{display:none}.report-options .disposal-report-results{max-width:100%;overflow:auto}.loan-calendar .calendar-day{width:100%;min-width:0;padding:7px 2px;border:0;border-radius:4px;color:#17332d}.calendar-day.available,.calendar-legend .available{background:#f3f6f4}.calendar-day.on-loan,.calendar-legend .on-loan{background:#8bc4b1}.calendar-day.reserved,.calendar-legend .reserved{background:#f6d48a}.calendar-day.mixed,.calendar-legend .mixed{background:linear-gradient(135deg,#8bc4b1 50%,#f6d48a 50%)}.calendar-day.history{background:#cdd5e4}.calendar-day.conflict,.calendar-legend .conflict{background:#edaaaa}.calendar-day.today{outline:2px solid #086e59}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.calendar-legend span{padding:4px 8px;border-radius:4px}.loan-calendar.year-view{max-width:100%;overflow:auto}.annual-strips{min-width:950px}.annual-month{display:grid;grid-template-columns:70px repeat(31,minmax(24px,1fr));gap:3px;margin:5px 0;align-items:center}.annual-month .calendar-day{font-size:12px;padding:5px 1px}.linked-contact-dialog{max-width:650px;width:calc(100% - 40px)}.linked-contact-dialog .detail-grid{display:flex;flex-direction:column;gap:12px}
@media(max-width:600px){.loan-editor>label,.loan-editor .rental-fields>label,.report-options>label{grid-template-columns:1fr;gap:5px}.loan-history-actions{flex-direction:column}.loan-panel{padding-inline:10px}}

.regional-date{display:flex;gap:6px;position:relative;min-width:0}.regional-date>input:not(.native-date){flex:1;min-width:0}.regional-date .native-date{position:absolute;width:1px;height:1px;opacity:0;right:0;bottom:0;padding:0;border:0}.regional-date .date-picker-action{flex:none;width:40px;align-self:stretch;padding:4px;font-size:20px;min-width:40px}

.loan-attachments{border:1px solid #d8e4dd;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0}.loan-attachments legend{font-weight:700;color:#086e59}.loan-attachments [hidden]{display:none}.loan-attachments label{display:flex;flex-direction:column;gap:6px}

/* Bulk Review: cached thumbnails and a keyboard-accessible larger preview. */
.grid-photo-cell{width:56px;min-width:56px;text-align:center}
.grid-review-photo{width:40px;height:40px;object-fit:contain;border-radius:4px;cursor:zoom-in}
.grid-review-photo:focus-visible{outline:2px solid #087566;outline-offset:2px}
.grid-review-photo-preview{position:fixed;z-index:20;width:240px;height:240px;object-fit:contain;background:white;border:1px solid #98aaa4;border-radius:6px;box-shadow:0 4px 18px #0004;pointer-events:none}
.grid-review-photo-preview[hidden]{display:none}

/* Owner development administration: aligned fields and accessible list sorting. */
.administration-report .development-toolbar{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.development-toolbar>input{max-width:360px;flex:1;min-width:180px}.development-toolbar label{display:grid;gap:6px}.development-toolbar select{min-width:180px}
.development-list-scroll{max-width:100%;overflow:auto;margin-bottom:24px}.development-list{min-width:1120px;table-layout:auto}.development-list th,.development-list td{vertical-align:middle;min-width:90px}.development-list th:first-child,.development-list td:first-child{min-width:210px;max-width:340px;overflow-wrap:anywhere}
.development-list .development-sort{display:inline-flex;align-items:center;text-align:start;background:transparent;color:inherit;border:0;padding:4px 0;box-shadow:none;font:inherit;font-weight:700;white-space:normal;width:auto;min-width:0}.development-sort:focus-visible{outline:2px solid #087566;outline-offset:3px}
.administration-report .development-editor{display:grid;grid-template-columns:1fr;gap:20px;max-width:1100px;align-items:start;margin-top:16px}
.development-editor>h3{margin:0}.administration-report .development-editor fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;padding:20px;border:1px solid #cadad4;border-radius:8px;min-width:0;margin:0}
.development-editor legend{font-weight:700;padding:0 8px}.development-editor .dev-wide{grid-column:1/-1}.administration-report .development-editor .dev-field{display:grid;grid-template-rows:auto auto;gap:6px;margin:0;min-width:0;align-content:start}
.development-editor .dev-field-label{line-height:1.5}.administration-report .development-editor .dev-field input,.administration-report .development-editor .dev-field select,.administration-report .development-editor textarea{width:100%;max-width:none;box-sizing:border-box;margin:0;min-height:44px}.development-editor textarea{resize:vertical}
.administration-report .development-editor .dev-check{display:flex;flex-direction:row;align-items:center;gap:10px;margin:0;min-height:44px}.administration-report .development-editor .dev-check input{width:18px;height:18px;min-height:18px;flex:none;margin:0;accent-color:#087566}
.development-editor p{margin:0}.development-editor .dev-editor-actions{display:flex;justify-content:flex-end;gap:12px}.development-editor .dev-editor-actions button{width:auto;min-width:120px;min-height:44px}
@media(max-width:700px){.administration-report .development-editor fieldset{grid-template-columns:1fr;padding:16px}.development-toolbar>input{max-width:none;width:100%;flex-basis:100%}.development-editor .dev-editor-actions{flex-wrap:wrap}}

/* Build 123: loaded by the real portal; fieldsets contain explicit grid wrappers. */
.administration-report .development-editor{width:100%;max-width:1100px}
.administration-report .development-editor fieldset{display:block;padding:20px;min-width:0}
.development-editor .dev-section-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;min-width:0}
.development-editor .dev-field-label{display:block;min-height:1.5em}
@media(max-width:700px){.development-editor .dev-section-fields{grid-template-columns:1fr}}

.development-list{min-width:1400px}.development-list th{overflow-wrap:normal;word-break:normal}.development-list th .development-sort{white-space:normal}

/* Photo roles and explicit OCR sources, build 125. */
.review-photo-options{display:flex;flex-wrap:wrap;gap:16px;margin-block:16px}.review-photo-card{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid #cbdcd5;border-radius:10px;width:min(100%,260px)}.review-photo-card .review-photo{width:100%;height:140px;margin:0}.photo-options{display:flex;flex-direction:column;gap:8px;min-width:0}.photo-options>label{margin:0;display:flex;flex-direction:column;gap:5px}.photo-options>label.inline-check{flex-direction:row;align-items:center;font-size:.9rem}.photo-options select{width:100%;min-width:140px}.photo-options input[type=checkbox]{width:18px;height:18px;flex:none;margin:0}.files-table .photo-options{flex-basis:100%}


.files-table .actions>.photo-options{grid-column:1/-1;white-space:normal}.photo-options .inline-check{white-space:normal;min-width:0}.label-ocr-result{grid-column:1/-1;min-width:0}

.ai-admin-form{grid-template-columns:minmax(150px,300px) minmax(0,400px)}.ai-admin-form input,.ai-admin-form select,.ai-admin-form textarea{min-width:0;width:100%}.ai-admin-form input[type=checkbox]{width:auto;justify-self:start}@media(max-width:600px){.ai-admin-form{grid-template-columns:minmax(0,1fr)}}

.ai-valuations-dialog{max-width:900px;width:90vw;max-height:90vh;overflow:auto}.ai-valuation-progress{background:#fff0a8;color:#332600;padding:18px;border:2px solid #d59a00;display:grid;gap:12px;margin:16px 0}.ai-valuation-progress progress{width:100%}.ai-valuation-progress.processing strong:before{content:"";display:inline-block;width:18px;height:18px;border:4px solid #da9d00;border-top-color:transparent;border-radius:50%;animation:ai-spin 1s linear infinite;margin-inline-end:10px}.ai-valuation-card{padding:16px;border-bottom:1px solid #ccc}.ai-valuation-card>label{font-weight:bold}.ai-valuation-card button{margin:5px}.valuation-warning-red{background:#fff0b3;color:#a90000;border:2px solid #b00000}.valuation-warning-yellow{background:#fff0a8;color:#664500}.ai-select{display:flex;gap:8px;margin:10px 0}@keyframes ai-spin{to{transform:rotate(360deg)}}

.ai-valuation-cell{width:64px!important;min-width:54px!important;max-width:80px!important;text-align:center;white-space:normal!important}.ai-valuation-cell span{display:block;font-size:12px}.ai-valuation-cell input{width:20px!important;min-width:20px!important;max-width:20px!important}.ai-valuations-dialog button.ai-valuation-secondary{background:#e3f2e9;color:#075c4d;border:1px solid #9bc4b0}.ai-valuations-dialog button.ai-valuation-primary{background:#08715b;color:white}.ai-valuation-card>label{display:flex;align-items:center;gap:10px}

.ai-comparable-links{font-size:13px}.ai-comparable-links a{font-weight:400}.ai-valuation-cell{width:72px!important;min-width:62px!important;max-width:88px!important}

.feedback-image-button{padding:4px;min-width:100px}.feedback-image-dialog{max-width:95vw;max-height:95vh}.feedback-image-dialog img{display:block;max-width:85vw;max-height:80vh;object-fit:contain}

/* Newsletter navigation matches the household menu controls. */
.sidebar nav a.newsletter-nav{display:flex;align-items:center;gap:7px;box-sizing:border-box;min-height:36px;width:calc(100% - 20px);margin:2px 10px;padding:6px 11px;border:0;border-radius:8px;background:transparent;color:#e5f2eb;text-align:start;text-decoration:none;font-family:inherit;font-size:.94rem;line-height:1.4;overflow-wrap:anywhere}
.sidebar nav a.newsletter-nav::before{content:none}
.sidebar nav a.newsletter-nav:visited{color:#e5f2eb}
.sidebar nav a.newsletter-nav:hover{background:#ffffff20;color:white;text-decoration:none}
.sidebar nav a.newsletter-nav:focus-visible{outline:2px solid #fff;outline-offset:-2px;background:#ffffff20;color:white}
@media(max-width:850px){.sidebar nav a.newsletter-nav{flex:none;min-height:44px;align-items:center;white-space:nowrap;width:auto;margin:4px;padding:8px 12px}}

/* API guide: common caption/control columns, with compact checkbox controls. */
.developer-api-panel .developer-api-field{display:grid;grid-template-columns:minmax(140px,210px) minmax(0,1fr);align-items:center;gap:16px;margin:12px 0;font-weight:600}
.developer-api-panel .developer-api-field input,.developer-api-panel .developer-api-field select,.developer-api-panel .developer-api-field textarea{width:100%;min-width:0;box-sizing:border-box;margin:0}
.developer-api-panel .developer-api-check input[type=checkbox]{width:20px;height:20px;justify-self:start;margin:0}
.developer-api-panel>button{margin:4px 8px 4px 0}
.developer-api-panel pre{max-height:360px;overflow:auto;padding:12px;background:#f1f6f3;border:1px solid #d8e4dd;border-radius:6px}
@media(max-width:520px){.developer-api-panel .developer-api-field{grid-template-columns:minmax(110px,40%) minmax(0,1fr);gap:10px}}

.developer-api-consent-check{display:flex;align-items:flex-start;gap:10px}.developer-api-consent-check input[type=checkbox]{width:20px;height:20px;flex:none;margin:0}

/* Compact child quantity actions and per-item valuation evidence. */
.contents-table .quantity-actions{min-width:0;gap:6px;flex-wrap:nowrap}
.contents-table .quantity-actions button{width:44px;min-width:44px;min-height:44px;margin:0;padding:6px;font-size:1.2rem}
.contents-table .contents-value{white-space:nowrap;font-variant-numeric:tabular-nums}
.contents-table td.contents-value-source{text-align:start;white-space:normal;overflow-wrap:anywhere}
@media(max-width:700px){
 .contents-table .contents-value,.contents-table .contents-value-source{grid-column:1/-1;white-space:normal}
 .contents-table .contents-value::before,.contents-table .contents-value-source::before{content:attr(data-label) ": ";color:#536c61;font-size:.85rem}
}
.contents-table th{overflow-wrap:anywhere}
@media(min-width:701px) and (max-width:850px){.contents-table .contents-name{min-width:140px}}
.contents-table th:nth-child(2),.contents-table th:nth-child(3){white-space:nowrap}

@media(max-width:700px){.contents-table td:nth-child(2)::before,.contents-table td:nth-child(3)::before{content:attr(data-label) ": "}}

/* Release history uses the same restrained panel treatment as Notes. */
.release-card{border:1px solid #ccdcd5;border-radius:10px;background:#fff;padding:16px;margin:0 0 14px}
.release-card h3{margin-top:0}.release-card p{overflow-wrap:anywhere}
#location-notes-tabs{margin:10px 0 16px}#location-notes-tabs .subtabs{margin-bottom:8px}

/* Email review: readable search and whole-row destination selection. */
.email-review-dialog{width:min(1100px,96vw);max-width:96vw}
.email-review-search{width:min(100%,760px);min-width:min(100%,380px)}
.email-review-results{max-height:360px;overflow:auto;margin-block:12px;border:1px solid #d7e7dc;border-radius:9px}
.email-review-results:empty{display:none}
.email-review-results table{min-width:600px}
.email-review-results thead{position:sticky;top:0;background:#edf6f2;z-index:1}
.email-review-results tbody tr{cursor:pointer}
.email-review-results tbody tr:hover,.email-review-results tbody tr[aria-selected="true"]{background:#e0f1e8}
.email-review-results tbody tr:focus-visible{outline:2px solid #086e59;outline-offset:-2px}
.email-event-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:480px;overflow:auto;padding:14px;background:#f3f8f4;border-radius:9px}

button.special-action{background:#fff0c2;color:#604600;border:1px solid #d7b359}button.special-action:hover{background:#ffe6a0}button.special-action:focus-visible{outline:2px solid #856300;outline-offset:2px}

/* Build 201: keep date inputs intact and distinguish record/file actions. */
.thing-editor>label:has([name="needsReview"]),.thing-editor>label:has([name="notes"]){grid-template-rows:auto auto;align-content:start;justify-items:start;gap:6px}
.thing-editor>label:has([name="needsReview"])>input{width:auto;justify-self:start;margin:0}
.thing-editor>label:has([name="notes"])>textarea{width:100%;box-sizing:border-box;margin:0}
.thing-editor>label:has([name="warrantyEndDate"]){min-width:185px}
.thing-editor .regional-date{display:flex;min-width:0;width:100%;box-sizing:border-box;flex-wrap:nowrap}
.thing-editor .regional-date>input:not(.native-date){flex:1 1 120px;width:120px;min-width:80px}
.thing-editor .warranty-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;background:transparent}
.warranty-shortcuts button{flex:none;width:auto;min-width:44px;min-height:34px;padding:6px 10px}
.review-attachments{border:1px solid #c9dad3;border-radius:10px;padding:12px;margin:16px 0;overflow:auto;background:#f8fbf9}
.review-documents-table{border-collapse:collapse;width:100%;min-width:540px}
.review-documents-table th,.review-documents-table td{padding:10px;text-align:left;vertical-align:middle;border-bottom:1px solid #d6e5d9}
.review-documents-table th{color:#17332d;background:#eaf3ed}.review-documents-table th:first-child{width:50%}
.review-documents-table .inline-check{display:flex;align-items:center;gap:8px;margin:0;font-weight:normal}
.review-documents-table button{width:auto;max-width:100%;white-space:normal;overflow-wrap:anywhere}

/* Search rows: #cards is a block container, so inline links otherwise run together. */
#cards a.inventory-search-result{display:grid;grid-template-columns:28px minmax(160px,1fr) minmax(0,1.4fr);gap:4px 12px;width:100%;box-sizing:border-box;align-items:start;min-width:0;padding:12px 0!important;border-bottom:1px solid #d7e7dc!important;text-align:start}
.inventory-search-icon{font-size:1.15rem;line-height:1.4}
.inventory-search-name,.inventory-search-location{min-width:0;overflow-wrap:anywhere}
.inventory-search-location{font-weight:400;color:#536b62;line-height:1.5}
#cards a.inventory-search-result:focus-visible{outline:2px solid #087566;outline-offset:3px}
@media(max-width:600px){#cards a.inventory-search-result{grid-template-columns:24px minmax(0,1fr)}.inventory-search-location{grid-column:2}}
