/* Inventory/Equipment presentation. Classic modules keep ownership of actions/data. */
.record-detail{container-type:inline-size;display:flex;flex-direction:column;min-width:0;min-height:0;max-width:1260px;height:100%;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin:0 auto}
.record-detail [hidden]{display:none!important}
.record-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:26px 26px 23px;flex-shrink:0}
.record-heading>div:first-child{min-width:0;flex:1}
.record-kicker{margin:0 0 10px;font-size:var(--ui-caption);text-transform:uppercase;letter-spacing:.06em;color:var(--text3);overflow-wrap:anywhere}
.record-heading h2{font-size:var(--ui-title);line-height:1.3;margin:0;overflow-wrap:anywhere}
.record-subtitle{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;font-size:12px;color:var(--text2)}
.record-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:wrap}
.record-actions .icon-btn,.record-card-heading .icon-btn{width:var(--control-size);height:var(--control-size);min-width:var(--control-size)}
.record-metrics{display:grid;grid-template-columns:repeat(var(--record-metric-cols,4),minmax(0,1fr));gap:0;background:var(--bg3);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:20px 26px;flex-shrink:0}
.record-metrics>div{padding:0 18px;border-left:1px solid var(--border);min-width:0}
.record-metrics>div:first-child{padding-left:0;border-left:0}
.record-metrics span,.record-metrics small{display:block;color:var(--text3);font-size:var(--ui-label);line-height:1.5}
.record-metrics strong{display:block;font-size:19px;font-weight:600;margin:12px 0 5px;overflow-wrap:anywhere}
.record-metrics small{font-size:var(--ui-caption)}
.record-tabs{display:flex;gap:24px;padding:0 26px;border-bottom:1px solid var(--border);overflow-x:auto;flex-shrink:0}
.record-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:15px 0 13px;color:var(--text3);font-size:var(--ui-action);white-space:nowrap;cursor:pointer}
.record-tabs button[aria-selected=true]{color:var(--accent-ink);border-color:var(--accent)}
.record-tabs button:focus-visible,.record-more summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.record-body{padding:24px 26px;overflow:auto;min-height:0;flex:1;scrollbar-gutter:stable;container-type:inline-size}
.record-columns{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px}
.record-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r-md);padding:20px;margin-bottom:18px;min-width:0}
.record-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}
.record-card h3{font-size:var(--ui-section);font-weight:600;margin:0}
.record-facts{margin:0;font-size:var(--ui-body)}
.record-facts>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding:11px 0}
.record-facts>div:last-child{border:0}
.record-facts dt{color:var(--text3)}
.record-facts dd{margin:0;text-align:right;overflow-wrap:anywhere;min-width:0}
.record-molecule{height:180px;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--text3);font-size:12px}
.record-molecule svg{max-width:100%;max-height:100%}
.record-muted{font-size:var(--ui-caption);color:var(--text3);line-height:1.6}
.record-notes{font-size:var(--ui-reading);line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
.record-note{display:flex;gap:10px;padding:15px 0 0;margin-top:16px;border-top:1px solid var(--border);color:var(--accent-ink);font-size:var(--ui-action)}
.record-note p{color:var(--text3);font-size:var(--ui-caption);margin:7px 0 0}
.record-note>svg{flex-shrink:0}
.record-fold{border-top:1px solid var(--border);padding:16px 0;font-size:var(--ui-action);color:var(--text2)}
.record-fold summary{cursor:pointer;font-weight:500}
.record-fold[open] summary{margin-bottom:16px}
.record-container{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px solid var(--border);font-size:var(--ui-body)}
.record-container:last-child{border:0}
.record-container>div:first-child{min-width:0;overflow-wrap:anywhere}
.record-container p,.record-event p{color:var(--text2);font-size:var(--ui-body);margin:7px 0}
.record-container small,.record-event small{display:block;color:var(--text3);font-size:var(--ui-caption)}
.record-container.is-empty{opacity:.65}
.record-event{display:flex;align-items:flex-start;gap:13px;padding:14px 0;border-bottom:1px solid var(--border);font-size:var(--ui-body);overflow-wrap:anywhere}
.record-event:last-child{border:0}
.record-event>svg{flex-shrink:0;margin-top:2px;color:var(--text3)}
.record-event>small{margin-left:auto;white-space:nowrap}
.record-more{position:relative}
.record-more summary{display:flex;align-items:center;justify-content:center;width:var(--control-size);height:var(--control-size);list-style:none;border:1px solid var(--border2);border-radius:var(--r-sm);cursor:pointer;font-size:12px;color:var(--text2);background:var(--bg2)}
.record-more summary::-webkit-details-marker{display:none}
.record-more summary:hover{color:var(--accent-ink);border-color:var(--accent)}
.record-more>div{position:absolute;z-index:15;top:38px;right:0;padding:8px;display:flex;gap:6px;background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-sm);box-shadow:var(--shadow-md)}
#rdr-submit{width:var(--control-size);height:var(--control-size);min-width:var(--control-size)}
#rdr-submit[aria-busy=true]{cursor:wait}
#reac-detail-content{height:100%;padding:24px;box-sizing:border-box}
#reac-detail-content>.record-detail{max-width:1200px}
#reac-detail-pane{overflow:hidden!important}
#reac-detail-content:has(>.record-detail){overflow:hidden}
@container(max-width:580px){.record-columns{grid-template-columns:minmax(0,1fr)}.record-event{flex-wrap:wrap}.record-container{flex-wrap:wrap}}
@media(max-width:820px){
 #reac-detail-content{padding:8px 10px 14px}
 .record-heading{padding:20px 16px;gap:16px;flex-wrap:wrap}.record-heading h2{font-size:var(--ui-title)}.record-heading>div:first-child{flex-basis:100%}.record-heading>.record-actions{margin-left:auto}
 .record-actions .icon-btn,.record-card-heading .icon-btn,.record-more summary{width:44px;height:44px;min-width:44px}
 #rdr-submit{width:44px;height:44px;min-width:44px}
 .record-more>div{top:50px}
 .record-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0;padding:18px 16px}.record-metrics>div{padding:0 12px}.record-metrics>div:nth-child(odd){border:0;padding-left:0}.record-metrics strong{font-size:18px;margin-top:9px}
 .record-tabs{gap:24px;padding:0 16px}.record-tabs button{min-height:48px}
 .record-body{padding:16px;scrollbar-gutter:auto}.record-card{padding:16px;margin-bottom:14px}.record-columns{grid-template-columns:minmax(0,1fr);gap:0}.record-molecule{height:155px}
 .record-container{flex-wrap:wrap}.record-actions{gap:6px}.record-event{flex-wrap:wrap}
}
.equipment-catalog-list{width:260px;flex-shrink:0;min-height:0;overflow:auto;border-right:1px solid var(--border);background:var(--bg)}
.equipment-catalog-list[hidden]{display:none}
.equipment-list-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 14px;font-size:13px;gap:8px}
.equipment-list-heading small{color:var(--text3);font-weight:400;margin-left:5px;font-size:11px}
.equipment-record-row{display:flex;align-items:flex-start;gap:4px;border:1px solid var(--border);border-radius:var(--r-md);margin:0 12px 10px;background:var(--bg2);overflow:hidden}
.equipment-record-row.active{background:var(--accent-light);border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
.equipment-record-pick{padding:13px 11px;flex:1;min-width:0;background:none;border:0;text-align:left;cursor:pointer;color:var(--text)}
.equipment-record-pick strong,.equipment-record-pick span,.equipment-record-pick small{display:block;overflow-wrap:anywhere}
.equipment-record-pick strong{font-size:var(--ui-body);font-weight:600;line-height:1.5}
.equipment-record-pick span{font-size:var(--ui-caption);color:var(--text3);margin-top:6px;line-height:1.5}
.equipment-record-pick small{font-size:var(--ui-caption);color:var(--text2);margin-top:7px;line-height:1.5}
.equipment-record-row>.eq-star{flex-shrink:0;margin:10px 6px 0 0}
#equip-detail-panel{min-width:0}
#equip-record-view{padding:22px;background:var(--bg);box-sizing:border-box}
#equip-record-view .record-detail{width:100%}
#equip-detail-bar{flex-wrap:wrap;height:auto!important;min-height:54px}
#equip-detail-bar>div:last-child{flex-wrap:wrap}
.equipment-upcoming{display:flex;align-items:flex-start;gap:12px;width:100%;padding:14px 0;border:0;border-bottom:1px solid var(--border);background:none;color:var(--text);text-align:left;cursor:pointer}
.equipment-upcoming:last-child{border:0}.equipment-upcoming>span,.equipment-upcoming>svg{color:var(--accent-ink);flex-shrink:0}.equipment-upcoming>div{flex:1;min-width:0}.equipment-upcoming strong{font-size:var(--ui-body);line-height:1.5}.equipment-upcoming p{font-size:var(--ui-caption);color:var(--text3);line-height:1.6;overflow-wrap:anywhere;margin:6px 0 0}
#equipment-schedule-host{height:620px;min-height:300px}
#equipment-schedule-host>#equip-agenda-view{height:100%}
.equipment-calendar-split{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden}
.equipment-calendar-split>.equip-agenda-wrap{min-width:0}
.equipment-booking-inspector{flex-shrink:0;width:240px;padding:18px;border-left:1px solid var(--border);background:var(--bg2);overflow:auto;box-sizing:border-box}
.equipment-booking-inspector[hidden]{display:none!important}
.equipment-booking-inspector h3{font-size:var(--ui-section);line-height:1.4;margin:18px 0 8px}
.equip-booking.is-selected{outline:2px solid var(--accent-ink);outline-offset:-1px}
@media(max-width:1100px){.equipment-booking-inspector{width:210px}.equipment-catalog-list{width:230px}}
@media(max-width:820px){
 #equip-bookings-inner{position:relative;overflow-x:hidden!important;min-width:0}
 #equip-sidebar{position:absolute;left:0;top:0;bottom:0;z-index:40}
 .equipment-catalog-list{width:auto;flex:1;min-width:0;border-right:0}
 #equip-bookings-inner[style*="display: flex"]:not(.equipment-has-detail):has(#equip-catalog-list:not([hidden])){display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}
 #equip-bookings-inner[style*="display: flex"]:not(.equipment-has-detail):has(#equip-catalog-list:not([hidden])) #equip-detail-panel{display:contents}
 #equip-bookings-inner[style*="display: flex"]:not(.equipment-has-detail):has(#equip-catalog-list:not([hidden])) #equip-detail-bar{grid-column:1;grid-row:1}
 #equip-bookings-inner[style*="display: flex"]:not(.equipment-has-detail):has(#equip-catalog-list:not([hidden])) #equip-catalog-list{grid-column:1;grid-row:2}
 #equip-bookings-inner[style*="display: flex"]:not(.equipment-has-detail):has(#equip-catalog-list:not([hidden])) #equip-cards-inner{display:none!important}
 .equipment-has-detail .equipment-catalog-list{display:none}
 #equip-detail-panel{width:100%;min-width:0;flex:1}
 #equip-record-view{padding:10px}
 #equip-detail-bar>div:first-child{flex-basis:100%;padding:2px 0}
 #equip-detail-bar>div:last-child{flex-wrap:wrap;justify-content:flex-start}
 #equip-detail-bar{padding:8px 12px;gap:6px!important}
 .equipment-booking-inspector{position:fixed;z-index:70;bottom:12px;left:10px;right:10px;width:auto;max-height:65vh;border:1px solid var(--border2);border-radius:var(--r-lg);box-shadow:var(--shadow-lg)}
 #equipment-schedule-host{height:580px}
 .equipment-record-pick{padding:16px}.equipment-record-pick strong{font-size:var(--ui-body)}.equipment-record-pick small,.equipment-record-pick span{font-size:12px}
}
/* The timetable and inspector scroll independently; selecting a low row must not hide its heading. */
#equip-record-view .record-detail:has([data-record-tab=schedule][aria-selected=true]) .record-metrics{display:none}
#equip-record-view .record-body:has(>[data-record-panel=schedule]:not([hidden])){display:flex;flex-direction:column;overflow:hidden;padding:0}
#equip-record-view [data-record-panel=schedule]:not([hidden]){display:flex;flex:1;min-height:0;min-width:0}
#equip-record-view #equipment-schedule-host{height:auto;min-height:0;flex:1;min-width:0}
#equip-record-view .equip-agenda-header{position:sticky;top:0;z-index:5}

@container(max-width:620px){.record-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0}.record-metrics>div:nth-child(odd){border-left:0;padding-left:0}}
/* On short phone screens the whole fiche scrolls, so its summary cannot trap the content below it. */
@media(max-width:820px){
 .record-detail{height:auto;min-height:100%;overflow:visible}
 .record-body{overflow:visible;flex:none}
 .record-tabs{position:sticky;top:0;z-index:8;background:var(--bg2)}
 #reac-detail-content:has(>.record-detail){height:auto;min-height:0;flex:1;overflow-y:auto}
 #equip-record-view{overflow-y:auto!important}
 #equip-record-view .record-body:has(>[data-record-panel=schedule]:not([hidden])){height:550px;flex:none}
}
