.promotion-card{min-width:0;overflow-wrap:anywhere}
.promotion-card h2{margin-top:16px}
.promotion-card .promotion-value{font-size:30px;font-weight:700;line-height:1.2;color:var(--ink)}
.promotion-form{width:100%;max-width:720px}
.promotion-field{margin-bottom:22px;min-width:0}
.promotion-field .helptext{margin:8px 0 0;line-height:1.6}
.promotion-check{display:flex;align-items:center;gap:10px;min-height:44px}
.promotion-check input{flex:0 0 20px;width:20px;min-height:20px;margin:0}
.promotion-field :is(#id_services,#id_clients,#id_groups){max-height:300px;overflow-y:auto;padding:8px 12px;border:1px solid var(--line);border-radius:8px}
.promotion-field :is(#id_services,#id_clients,#id_groups) label{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:400;overflow-wrap:anywhere}
.promotion-field :is(#id_services,#id_clients,#id_groups) input{flex:0 0 18px;width:18px;min-height:18px;margin:0}
.promotion-form [hidden]{display:none!important}
.promotion-field [data-promotion-search]{margin-bottom:12px}
.promotion-field :is(input,select){max-width:100%;min-width:0}
.promotion-field :is(input,select):focus-visible,.promotion-card a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.client-activity{min-width:0}
.client-promotions{min-width:0;overflow-wrap:anywhere}
.client-promotions-heading,.client-promotion-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}
.client-promotions-heading h2,.client-promotion-heading h3{margin:0}
.client-promotions-heading>a{font-size:12px}
.client-promotion{padding:18px 0;border-top:1px solid var(--line)}
.client-promotion:first-of-type{margin-top:16px}
.client-promotion:last-child{padding-bottom:0}
.client-promotion-heading strong{white-space:nowrap;font-size:20px}
.client-promotion dl{grid-template-columns:minmax(100px,1fr) minmax(0,2fr)}
.client-promotions a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:760px){.promotion-grid{grid-template-columns:minmax(0,1fr)}.promotion-form{padding:20px}.promotion-card .button{min-height:44px}.promotion-field :is(input:not([type=checkbox]),select){min-height:44px;font-size:16px}}
