.shop-section{border-top:1px solid #dbe5df;padding:20px 0}.shop-section>header,.shop-section>header>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.shop-section>header{justify-content:space-between;margin-bottom:12px}.shop-section h2{font-size:18px;margin:0}.shop-section td small{display:block;margin-top:6px;color:#586d61}.shop-legacy{padding:18px 0;border-top:1px solid #dbe5df}.shop-legacy summary{cursor:pointer;font-weight:600}.shop-legacy p,.shop-note{font-size:13px;line-height:1.7;color:#576c60}.shop-dialog{width:min(680px,calc(100% - 24px));max-height:90vh}.shop-dialog form{padding:20px}.shop-dialog header,.shop-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.shop-dialog h2{font-size:20px}.shop-dialog footer{justify-content:flex-end;margin-top:16px}.shop-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.shop-form label{display:grid;gap:8px;min-width:0}.shop-form .wide{grid-column:1/-1}.shop-form [hidden],.shop-backfill[hidden]{display:none!important}.shop-session-attribution{padding:8px 10px;margin-top:8px;background:#edf5f1;color:#275f4c;font-size:13px}.shop-backfill{display:flex;gap:8px;font-size:13px;line-height:1.6;margin-top:8px}.shop-backfill input{width:auto;flex:none}.race-filters:has(#race-shop){grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:700px){.shop-form{grid-template-columns:1fr}.shop-section>header{align-items:flex-start}.shop-section .table-wrap{overflow:auto}.shop-section table{min-width:640px}.race-filters:has(#race-shop){grid-template-columns:repeat(2,minmax(0,1fr))}}
.shop-row-name{display:block;font-size:12px;color:#627168;margin-top:4px}
.shop-manager-body{padding:0 20px 20px}.shop-manager-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #dbe5df}.shop-manager-row strong{flex:1;min-width:0;overflow-wrap:anywhere}.room-shop-fields{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;border-top:1px solid #dbe5df;padding-top:16px}.room-shop-fields>button{align-self:end}.room-shop-fields .wide{grid-column:1/-1}.room-shop-fields [hidden]{display:none!important}.room-shop-fields label{min-width:0}.shop-backfill>label{display:flex;gap:8px;align-items:flex-start}
