/* Shared layout repairs and optional Daily Reports privacy, v18.18. */
.modal .modal-dialog,.modal .modal-content{z-index:auto!important}
.dd17-location-panel{max-height:min(65vh,520px);overscroll-behavior:contain}
.dd18-date-range-group{display:grid;grid-template-columns:minmax(230px,1.35fr) repeat(2,minmax(160px,1fr));gap:12px;grid-column:1/-1;align-items:end;min-width:0}
.dd18-date-range-group>*{min-width:0!important;width:auto!important;margin:0!important}
.dd18-date-range-group label{display:flex;flex-direction:column;gap:6px}
.dd-toast-range{grid-template-columns:38px minmax(0,1fr) 38px!important;min-width:0;max-width:100%}
.dd-toast-range-trigger{min-width:0!important;overflow:hidden}
.dd-toast-range-trigger strong,.dd-toast-range-trigger small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.royalty-filter-card>*{min-width:0}
.dd18-invoice-ref{display:block;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}
.royalty-table td{overflow-wrap:anywhere}
.royalty-table .royalty-actions-col{position:sticky;right:0;min-width:78px;width:78px;z-index:2;background:var(--bs-body-bg,#fff);box-shadow:-1px 0 0 #e4e5df}
.royalty-table thead .royalty-actions-col{z-index:3;background:#f4f4ef}
.dd18-route-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:end;margin:20px 0 28px;padding:20px;border:1px solid #e4e5dd;border-radius:16px;background:#fafaf7}
.dd18-route-form>label{display:flex;flex-direction:column;gap:7px;min-width:0}
.dd18-route-form>.dd18-check,.dd18-check{display:flex;flex-direction:row;align-items:center;gap:10px;margin:0;min-height:42px}
.dd18-check input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;accent-color:#82720a}
.dd18-route-form>button{justify-self:start}
.dd18-card{padding:22px;border:1px solid #e0e2d7;border-radius:18px;background:#fff;margin-bottom:18px;min-width:0}
.dd18-card-head{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.dd18-card h3,.dd18-card h4{margin:0 0 6px;font-size:1.1rem;font-weight:700}
.dd18-card p{color:#687060;font-size:.9rem;line-height:1.5;margin:0}
.dd18-privacy{background:linear-gradient(130deg,#fafbf6,#fff);border-color:#d9decb}
.dd18-privacy-body{display:grid;gap:20px;border-top:1px solid #e0e2d7;padding-top:20px;margin-top:18px}
.dd18-privacy-body[hidden],.dd18-fields[hidden],.dd18-optional[hidden]{display:none!important}
.dd18-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.dd18-fields label{display:flex;align-items:center;gap:8px;border:1px solid #dde2d4;border-radius:11px;padding:10px;font-size:.88rem;cursor:pointer;background:#fff;min-width:0}
.dd18-fields label:has(input:checked){border-color:#9da77f;background:#f0f4e7}
.dd18-fields input{accent-color:#697c3a;width:17px;height:17px;flex-shrink:0}
.dd18-period{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dd18-preview{padding:14px 16px;background:#eef3e4;border-radius:12px;line-height:1.55;color:#374529;font-size:.9rem}
.dd18-privacy-note{font-size:.8rem!important;margin-top:10px!important}
.dd18-type-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0;min-height:35px}
.dd18-type-chip{border:1px solid #dddcca;background:#faf9f0;border-radius:24px;padding:6px 8px 6px 13px;display:inline-flex;align-items:center;gap:7px}
.dd18-type-chip button{border:0;background:transparent;border-radius:50%;width:28px;height:28px;color:#555}
.dd18-entry-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-top:20px}
.dd18-entry-filters label{min-width:180px;flex:1;display:grid;gap:6px;font-size:.85rem}
.dd18-entry-table{max-height:65vh;overflow:auto}
.dd18-entry-table th{white-space:nowrap;background:#f6f7f1;position:sticky;top:0}
.dd18-entry-table td{min-width:110px;max-width:280px;overflow-wrap:anywhere}
.dd18-entry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dd18-entry-form label{display:grid;gap:7px;min-width:0}
.dd18-entry-form textarea{min-height:100px}
.dd18-entry-status{min-height:22px;margin:12px 0;color:#647052}
@media(max-width:800px){.dd18-date-range-group{grid-template-columns:repeat(2,minmax(0,1fr))}.dd18-date-range-group>.ops-shared-range{grid-column:1/-1}.dd18-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.dd18-route-form,.dd18-period,.dd18-entry-form{grid-template-columns:1fr}.dd18-card{padding:16px}.dd18-fields{grid-template-columns:1fr}.dd18-date-range-group{gap:8px}.dd18-date-range-group input[type=date]{font-size:.86rem;padding:8px;min-width:0;width:100%}.dd18-card-head>.btn{width:100%}}

@media(max-width:767.98px){#upgradeGenericModal .modal-content{height:auto;max-height:calc(100dvh - .8rem)}#upgradeGenericModal .modal-dialog{height:auto;max-height:calc(100dvh - .8rem)}#upgradeGenericModal .modal-body{flex:0 1 auto}}

@media(max-width:540px){.dd18-entry-table{max-height:none;overflow:visible}.dd18-entry-table thead{display:none}.dd18-entry-table table,.dd18-entry-table tbody{display:block;width:100%}.dd18-entry-table tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e0e2d7;border-radius:12px;padding:8px;margin-bottom:10px}.dd18-entry-table td{display:block;min-width:0;max-width:none;border:0;padding:8px}.dd18-entry-table td::before{content:attr(data-label);display:block;font-size:.7rem;text-transform:uppercase;color:#737768;margin-bottom:5px}.dd18-entry-table td:last-child{grid-column:1/-1;text-align:right}.dd18-entry-table td[colspan]{grid-column:1/-1}}
.royalty-filter-card:not(.is-collapsed){grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.royalty-filter-card>.royalty-filter-heading{order:0;grid-column:1/-1}
.royalty-filter-card>.royalty-filter-field{order:1}
.royalty-filter-card>.royalty-filter-buttons{align-self:center;display:flex;gap:8px;flex-wrap:wrap}
.royalty-filter-card>.dd18-date-range-group{order:2}
.royalty-filter-card.is-collapsed>.dd18-date-range-group{display:none}
.royalty-metric{position:relative;display:block;min-width:0}
.royalty-metric>div{min-width:0;width:100%}
.royalty-metric span{padding-right:28px;min-height:32px}
.royalty-metric>i{position:absolute;top:12px;right:10px;font-size:.9rem;padding:7px}
.royalty-metric strong{font-size:clamp(1rem,1.45vw,1.25rem);overflow-wrap:anywhere}
@media(max-width:767.98px){.royalty-filter-card:not(.is-collapsed){grid-template-columns:1fr!important}.royalty-metric{min-width:190px}.royalty-filter-card>.royalty-filter-buttons{align-self:auto}}

/* Employee Types editor: equal controls and usable touch targets at every width. */
.dd19-type-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}
.dd19-type-toolbar .form-select{width:auto;max-width:100%}
.dd19-type-list{display:grid;gap:.5rem;max-height:38vh;overflow:auto;padding:.25rem}
.dd19-type-row{display:grid;grid-template-columns:24px minmax(0,1fr) 44px;align-items:center;gap:.6rem}
.dd19-type-row input[type=checkbox],.dd19-type-selectall input{width:18px;height:18px;accent-color:var(--mustard)}
.dd19-type-row .btn{min-height:42px;padding:.4rem}
.dd19-type-add{display:flex;gap:.5rem;margin:1rem 0}
.dd19-type-add input{min-width:0}.dd19-type-add button{flex:none}
.dd19-type-selectall{display:flex;align-items:center;gap:.6rem;margin:.75rem .25rem}
.dd19-type-import{border:1px solid #ddd;border-radius:12px;padding:1rem}
.dd19-type-import summary{font-weight:700;cursor:pointer}
