.cp-missions { list-style: none; padding: 0; margin: 14px 0; display: grid; gap: 6px; }
.cp-missions li { border: 1px solid #e0e7eb; border-radius: 8px; background: #fff; }
.cp-missions button { display: grid; grid-template-columns: 22px 1fr; gap: 3px 8px; width: 100%; padding: 12px; border: 0; background: transparent; color: #334e63; text-align: left; font: 600 12px/1.5 var(--body); cursor: pointer; }
.cp-missions button > span { grid-row: 1/3; color: #728595; }
.cp-missions small { grid-column: 2; font-size: 11px; font-weight: 400; color: #6c7d89; }
.cp-missions .done { background: #eff7f4; border-color: #c8ded6; }
.cp-missions .done button > span { color: #357568; }
.cp-policy { font-size: 11px; line-height: 1.7; color: #657b8c; }
.cp-number { margin: 14px 0 0; display: grid; gap: 5px; }
.cp-number code { font-size: 12px; overflow-wrap: anywhere; color: #334e63; }
.coupon-code code { font-size: clamp(12px, 2.4vw, 17px); overflow-wrap: anywhere; }
#coupon-to-classic { background: #2d485d; border-color: #2d485d; color: #fff; text-decoration: none; }
#coupon-to-classic[hidden] { display: none !important; }
#z-desk .cp-missions { display: none; }
.cp-missions button:focus-visible { outline: 3px solid #8faabc; outline-offset: 3px; border-radius: 7px; }
@media (max-width: 760px) { .coupon .zone-cta { display: grid; } }

.coupon-application[hidden] { display: none !important; }
.coupon-application { padding: 20px; margin: 20px 0; border: 1px solid #d9e2e8; border-radius: 14px; background: #f6f9fb; text-align: left; }
.coupon-form-intro { margin-top: 0; color: #2d485d; font-weight: 700; }
.coupon-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.coupon-form-grid label { display: grid; gap: 6px; font: 600 12px/1.6 var(--body); color: #334e63; min-width: 0; }
.coupon-form-grid input,.coupon-form-grid select { box-sizing: border-box; width: 100%; min-width: 0; padding: 12px; border: 1px solid #bbcbd6; border-radius: 8px; background: white; font: 14px var(--body); color: #243d50; }
.coupon-consent-details { margin: 16px 0; font: 12px/1.7 var(--body); color: #657b8c; }
.coupon-consent { display: flex; gap: 8px; align-items: start; font: 12px/1.6 var(--body); margin: 14px 0; }
.coupon-application > button { width: 100%; background: #2d485d; border-color: #2d485d; color: white; }
.coupon-application-status { color: #455f72; font: 12px/1.8 var(--body); overflow-wrap: anywhere; }
@media(max-width: 560px) { .coupon-form-grid { grid-template-columns: 1fr; } .coupon-application { padding: 16px; } }

#kit-dialog { max-width: 560px; box-sizing: border-box; max-height: 88vh; overflow-y: auto; }
