/* Target forms: shared columns, aligned inputs, compact supporting controls. */
html #modal#modal#modal:has(.mb288-dialog){width:min(760px,calc(100vw - 24px))!important}
html #modal#modal#modal:has(.mb288-dialog)>.modal-head{padding:14px 18px!important;min-height:64px!important}
html #modal#modal#modal:has(.mb288-dialog)>.modal-head h2{font-size:18px!important;letter-spacing:-.4px!important}
html #modal#modal#modal .mb288-dialog{padding:14px 18px 0!important;scroll-padding-bottom:80px}
html #modal#modal#modal .mb288-dialog form{gap:10px!important}
html #modal#modal#modal .mb288-dialog .mb288-intro{margin:0 0 10px!important}
html #modal#modal#modal .mb288-dialog .mb288-intro>p:not(.mb251-context){display:none!important}
html #modal#modal#modal .mb288-dialog .mb288-intro .mb251-context{font-size:13px!important;margin:0!important}
html #modal#modal#modal .mb288-dialog .mb250-row{padding:12px!important;border-radius:12px!important}
html #modal#modal#modal .mb288-dialog .mb250-row>header{gap:5px!important;margin-bottom:8px!important}
html #modal#modal#modal .mb288-dialog .mb250-row>header strong{font-size:14px!important}
html #modal#modal#modal .mb288-dialog .mb250-row>header small{font-size:10px!important}
html #modal#modal#modal .mb288-dialog .mb250-fields{gap:8px!important;align-items:start!important}
html #modal#modal#modal .mb288-dialog .mb250-field>span{font-size:11px!important;line-height:18px!important;margin:0!important}
html #modal#modal#modal .mb288-dialog :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){height:40px!important;min-height:40px!important;border-radius:8px!important;padding:8px 9px!important;font-size:16px!important;line-height:22px!important;margin:0!important;font-variant-numeric:tabular-nums}
html #modal#modal#modal .mb288-dialog .mb250-field{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:5px!important}
html #modal#modal#modal .mb288-dialog .money-entry-field.mb250-field{grid-template-rows:18px 40px auto!important;row-gap:5px!important}
html #modal#modal#modal .mb288-dialog .money-entry-heading{display:contents!important}
html #modal#modal#modal .mb288-dialog .money-entry-heading>label,
html #modal#modal#modal .mb288-dialog .money-entry-heading>label.mt251-field.mb250-field{grid-row:1!important;display:block!important;margin:0!important;line-height:18px!important;min-height:18px!important}
html #modal#modal#modal .mb288-dialog .money-entry-field>[data-money-display]{grid-row:2!important}
html #modal#modal#modal .mb288-dialog .money-entry-line{grid-row:3!important;display:flex!important;gap:6px!important;min-height:24px!important;justify-content:flex-start!important;padding:0!important;margin:0!important;border:0!important;max-width:100%!important}
html #modal#modal#modal .mb288-dialog .money-entry-option{min-height:24px!important;gap:2px!important;font-size:10px!important;font-weight:500!important;line-height:1!important}
html #modal#modal#modal .mb288-dialog .money-entry-option input{width:13px!important;height:13px!important;min-width:13px!important;min-height:13px!important;margin:0!important}
html #modal#modal#modal .mb288-dialog .money-entry-line output{display:none!important}
html #modal#modal#modal .mb288-dialog .mb294-event-meta{display:grid!important;grid-template-columns:minmax(0,1.5fr) minmax(130px,1fr)!important;gap:10px!important;padding:0 0 10px!important;border-bottom:1px solid #e0e6f0!important}
html #modal#modal#modal .mb288-dialog .mb294-roster:is([data-roster-mode=event],[data-roster-mode=sales],[data-roster-mode=store]){gap:0!important;border:1px solid #e2e7f0!important;border-radius:12px!important;background:#fff!important;overflow:clip!important}
html #modal#modal#modal .mb288-dialog .mb294-columns{display:grid!important;gap:10px!important;padding:10px 12px!important;background:#f0f3fa!important;color:#6b7a91!important;font-size:10px!important;font-weight:650!important;line-height:16px!important;border-bottom:1px solid #e2e7f0!important}
html #modal#modal#modal .mb288-dialog .mb294-event-columns,
html #modal#modal#modal .mb288-dialog .mb294-compact.mb294-event-row{grid-template-columns:70px minmax(0,1fr) 70px!important}
html #modal#modal#modal .mb288-dialog .mb294-sales-columns,
html #modal#modal#modal .mb288-dialog .mb294-compact.mb294-sales-row{grid-template-columns:90px minmax(0,1fr)!important}
html #modal#modal#modal .mb288-dialog .mb294-columns>span:not(:first-child){text-align:right!important}
html #modal#modal#modal .mb288-dialog .mb250-row.mb294-compact{display:grid!important;gap:10px!important;align-items:start!important;padding:10px 12px!important;border:0!important;border-bottom:1px solid #edf0f5!important;border-radius:0!important;background:#fff!important}
html #modal#modal#modal .mb288-dialog .mb250-row.mb294-compact:last-child{border-bottom:0!important}
html #modal#modal#modal .mb288-dialog .mb294-compact.mb288-event-store{background:#f7f9ff!important;border-bottom-color:#dce5f8!important}
html #modal#modal#modal .mb288-dialog .mb294-compact>header{display:block!important;padding-top:3px!important;margin:0!important;align-self:start!important;min-width:0!important}
html #modal#modal#modal .mb288-dialog .mb294-compact>header strong{display:block!important;font-size:13px!important;line-height:20px!important;overflow-wrap:anywhere!important}
html #modal#modal#modal .mb288-dialog .mb294-compact>header small{display:block!important;margin:1px 0 0!important;line-height:15px!important;color:#8390a3!important}
html #modal#modal#modal .mb288-dialog .mb294-compact>.mb250-fields{display:contents!important}
html #modal#modal#modal .mb288-dialog .mb294-roster .mb294-compact>.mb250-fields>.mb250-field{grid-column:auto!important}
html #modal#modal#modal .mb288-dialog .mb294-compact .mb250-field{grid-template-rows:40px auto!important;row-gap:3px!important}
html #modal#modal#modal .mb288-dialog .mb294-compact .money-entry-field>[data-money-display]{grid-row:1!important}
html #modal#modal#modal .mb288-dialog .mb294-compact .money-entry-line{grid-row:2!important}
html #modal#modal#modal .mb288-dialog .mb294-compact .mb250-field>span,
html #modal#modal#modal .mb288-dialog .mb294-compact .money-entry-heading>label{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
html #modal#modal#modal .mb288-dialog .mb294-compact :is([data-money-display],[data-number-display],input[type=number]){text-align:right!important}
html #modal#modal#modal .mb288-dialog .mb250-row[aria-label="공통 목표 입력"]{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:8px!important}
html #modal#modal#modal .mb288-dialog .mb250-row[aria-label="공통 목표 입력"]>header,
html #modal#modal#modal .mb288-dialog .mb250-row[aria-label="공통 목표 입력"]>p:not([role=status]){display:none!important}
html #modal#modal#modal .mb288-dialog .mb250-row[aria-label="공통 목표 입력"]>.mb250-fields{grid-template-columns:minmax(0,1fr)!important}
html #modal#modal#modal .mb288-dialog .mb250-row[aria-label="공통 목표 입력"]>.btn{height:40px!important;min-height:40px!important;padding:8px 10px!important;margin:0!important;font-size:12px!important;border-radius:8px!important}
html #modal#modal#modal .mb288-dialog .mb250-row[aria-label="공통 목표 입력"]>[role=status]{grid-column:1/-1!important;font-size:11px!important;margin:0!important}
html #modal#modal#modal .mb288-dialog .mb250-row[aria-label="공통 목표 입력"]>[role=status]:empty{display:none!important}
html #modal#modal#modal .mb288-dialog .mb251-crm-row{padding:12px!important}
html #modal#modal#modal .mb288-dialog label textarea[name][rows][maxlength]{height:auto!important;min-height:76px!important;font-size:15px!important;padding:9px 10px!important;line-height:1.55!important;margin:0!important}
html #modal#modal#modal .mb288-dialog .mb288-optional{margin-top:4px!important}
html #modal#modal#modal .mb288-dialog .mb288-optional>summary{min-height:36px!important;padding:8px 0!important}
html #modal#modal#modal .mb288-dialog .mb288-focus-row{grid-template-columns:minmax(0,1fr) 120px!important;gap:10px!important;align-items:center!important;padding:9px 12px!important}
html #modal#modal#modal .mb288-dialog .mb288-focus-row>header{margin:0!important}
html #modal#modal#modal .mb288-dialog .mb288-focus-row>label{font-size:10px!important;line-height:18px!important}
html #modal#modal#modal .mb288-dialog .mb250-fields:has([data-focus256-apply]){align-items:end!important}
html #modal#modal#modal .mb288-dialog [data-focus256-apply]{min-height:40px!important;height:40px!important;margin:0!important;padding:8px!important;font-size:12px!important}
html #modal#modal#modal .mb288-dialog .mt288-period{padding:12px!important;border-radius:12px!important}
html #modal#modal#modal .mb288-dialog .mt288-period>header{margin:0 0 10px!important}
html #modal#modal#modal .mb288-dialog .mt288-period h3{font-size:14px!important}
html #modal#modal#modal .mb288-dialog .mt288-total{padding-top:8px!important;margin-top:8px!important;font-size:12px!important}
html #modal#modal#modal .mb288-dialog form>footer{gap:0!important;padding:10px 2px max(12px,env(safe-area-inset-bottom))!important;box-shadow:0 -5px 12px #f5f7fc!important}
html #modal#modal#modal .mb288-dialog form>footer>span{display:none!important}
html #modal#modal#modal .mb288-dialog form>footer>.btn{min-height:44px!important;font-size:14px!important;padding:10px!important;border-radius:10px!important}
@media(max-width:430px){
 html #modal#modal#modal .mb288-dialog{padding:12px 14px 0!important}
 html #modal#modal#modal:has(.mb288-dialog)>.modal-head{padding:12px 14px!important}
 html #modal#modal#modal .mb288-dialog .mb294-event-meta{grid-template-columns:minmax(0,1fr) 132px!important;gap:8px!important}
 html #modal#modal#modal .mb288-dialog .mb294-event-meta input[type=date]{font-size:14px!important;padding:8px 5px!important}
 html #modal#modal#modal .mb288-dialog .mb294-event-columns,
 html #modal#modal#modal .mb288-dialog .mb294-compact.mb294-event-row{grid-template-columns:62px minmax(0,1fr) 58px!important;gap:8px!important}
 html #modal#modal#modal .mb288-dialog .mb294-sales-columns,
 html #modal#modal#modal .mb288-dialog .mb294-compact.mb294-sales-row{grid-template-columns:76px minmax(0,1fr)!important}
 html #modal#modal#modal .mb288-dialog .mb294-columns,
 html #modal#modal#modal .mb288-dialog .mb250-row.mb294-compact{padding-left:10px!important;padding-right:10px!important}
}
@media(max-width:350px){
 html #modal#modal#modal .mb288-dialog{padding-left:10px!important;padding-right:10px!important}
 html #modal#modal#modal .mb288-dialog .mb294-event-meta{grid-template-columns:minmax(0,1fr) 124px!important;gap:6px!important}
 html #modal#modal#modal .mb288-dialog .mb294-event-columns,
 html #modal#modal#modal .mb288-dialog .mb294-compact.mb294-event-row{grid-template-columns:52px minmax(0,1fr) 48px!important;gap:6px!important}
 html #modal#modal#modal .mb288-dialog .mb294-compact>header strong{font-size:12px!important}
 html #modal#modal#modal .mb288-dialog .mb294-compact :is([data-money-display],[data-number-display]){font-size:14px!important;padding-left:5px!important;padding-right:5px!important}
 html #modal#modal#modal .mb288-dialog .mb294-compact .money-entry-option{font-size:9px!important;gap:2px!important}
}
/* Keep one scrolling body; older global sheet rules must not add a second scrollbar. */
html body #modal#modal#modal#modal:has(.mb288-dialog){height:min(90dvh,920px)!important;max-height:90dvh!important;min-height:0!important;overflow:hidden!important;overflow-y:hidden!important}
html body #modal#modal#modal#modal .mb288-dialog{flex:1 1 0!important;height:auto!important;min-height:0!important;max-height:none!important}
