.codr{--c-accent:var(--accent,#1f6f43);--c-cta:var(--cta,#16a34a);font-size:19px;line-height:1.5}
.codr *,.codr-dialog *{box-sizing:border-box}

/* pachete */
.codr-offers{border:0;margin:0 0 18px;padding:0}
.codr-offers legend{font-weight:800;font-size:20px;margin-bottom:12px;padding:0}
.codr-offer{position:relative;display:flex;align-items:center;gap:14px;border:2px solid #d9d9d9;border-radius:14px;padding:16px;margin-bottom:12px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s}
.codr-offer input{position:absolute;opacity:0;pointer-events:none}
.codr-offer.is-selected{border-color:var(--c-accent);background:#f2f9f5;box-shadow:0 0 0 1px var(--c-accent)}
.codr-offer:focus-within{outline:3px solid #9cc9ae;outline-offset:2px}
.codr-radio{flex:0 0 26px;height:26px;border-radius:50%;border:2px solid #9a9a9a;position:relative}
.codr-offer.is-selected .codr-radio{border-color:var(--c-accent)}
.codr-offer.is-selected .codr-radio::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--c-accent)}
.codr-offer-body{flex:1;display:flex;flex-direction:column;gap:2px}
.codr-offer-title{font-weight:800;font-size:19px}
.codr-offer-sub{font-size:16px;color:#444}
.codr-save{color:#b3261e}
.codr-ship-free{font-size:15px;font-weight:700;color:var(--c-accent)}
.codr-ship{font-size:15px;color:#555}
.codr-offer-price{font-weight:800;font-size:22px;white-space:nowrap}
.codr-offer-price .woocommerce-Price-amount{font-weight:800}
.codr-badge{position:absolute;top:-12px;right:14px;background:#b3261e;color:#fff;font-size:13px;font-weight:800;letter-spacing:.04em;padding:4px 10px;border-radius:999px;text-transform:uppercase}

/* buton */
.codr-cta{background:var(--c-cta,#16a34a);box-shadow:0 6px 0 #0f6b30;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;border:0;cursor:pointer;font:inherit;background:linear-gradient(180deg,color-mix(in srgb,var(--c-cta,#16a34a) 85%,#fff) 0%,var(--c-cta,#16a34a) 100%);color:#fff;border-radius:14px;padding:16px 20px;min-height:72px;box-shadow:0 6px 0 color-mix(in srgb,var(--c-cta,#16a34a) 60%,#000);transition:transform .1s,box-shadow .1s;animation:codr-pulse 2.2s ease-in-out infinite;text-decoration:none}
.codr-dialog .codr-cta{--c-cta:var(--cta,#16a34a)}
.codr-cta::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:codr-shine 3s ease-in-out infinite}
.codr-cta:hover{filter:brightness(1.05)}
.codr-cta:active{box-shadow:0 3px 0 #0f6b30;animation:none;transform:translateY(3px);box-shadow:0 3px 0 color-mix(in srgb,var(--c-cta,#16a34a) 60%,#000)}
.codr-cta:focus-visible{outline:3px solid #111;outline-offset:3px}
.codr-cta-main{font-size:23px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}
.codr-cta-sub{font-size:15px;opacity:.95}
.codr-arrow{display:inline-block;animation:codr-nudge 1.1s ease-in-out infinite}
.codr-cta.is-loading{animation:none;opacity:.8;cursor:wait}
.codr-cta.is-loading::after{animation-duration:1s}
.codr-oos{background:#fff4e5;border:2px solid #f1c27d;border-radius:12px;padding:14px;font-weight:700;text-align:center}
@keyframes codr-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@keyframes codr-shine{0%{left:-60%}55%,100%{left:130%}}
@keyframes codr-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}

/* dialog */
.codr-lock{overflow:hidden}
.codr-dialog{border:0;border-radius:20px;padding:0;width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.35);color:#1a1a1a;font-size:18px;line-height:1.45}
.codr-dialog::backdrop{background:rgba(15,20,18,.6)}
.codr-form{position:relative;padding:26px 22px 22px}
.codr-close{position:absolute;top:10px;right:12px;width:44px;height:44px;border:0;border-radius:50%;background:#f1f1f1;font-size:28px;line-height:1;cursor:pointer;color:#333}
.codr-form-title{font-size:26px;margin:0 40px 4px 0;line-height:1.2}
.codr-form-lead{margin:0 0 16px;color:#444;font-size:17px}
.codr-summary{display:flex;gap:12px;align-items:center;background:#f5f4f1;border-radius:14px;padding:12px;margin-bottom:16px}
.codr-summary img{width:64px;height:64px;object-fit:cover;border-radius:10px;flex:0 0 64px}
.codr-summary-body{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.codr-summary-body strong{font-size:17px;line-height:1.3}
.codr-offer-select{font-size:17px;padding:10px;border:2px solid #cfcfcf;border-radius:10px;background:#fff;width:100%}
.codr-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 12px}
.codr-field{display:flex;flex-direction:column;gap:4px}
.codr-field--full{grid-column:1/-1}
.codr-field label{font-weight:700;font-size:16px}
.codr-opt{font-weight:400;color:#666}
.codr-field input,.codr-field select{font-size:18px;padding:13px 12px;border:2px solid #cfcfcf;border-radius:10px;background:#fff;width:100%;min-height:52px;color:#111}
.codr-field input:focus,.codr-field select:focus{outline:none;border-color:var(--accent,#1f6f43);box-shadow:0 0 0 3px rgba(31,111,67,.18)}
.codr-field .is-invalid{border-color:#b3261e;box-shadow:0 0 0 3px rgba(179,38,30,.15)}
.codr-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.codr-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.codr-totals{margin:18px 0 10px;padding:14px;border:2px dashed #d9d9d9;border-radius:14px}
.codr-totals div{display:flex;justify-content:space-between;gap:12px;padding:3px 0}
.codr-totals dt,.codr-totals dd{margin:0}
.codr-total{border-top:1px solid #e5e5e5;margin-top:6px;padding-top:8px!important;font-weight:800;font-size:20px}
.codr-legal{font-size:14px;color:#555;margin:0 0 12px}
.codr-legal a{color:inherit}
.codr-error{background:#fdecea;color:#8a1c14;border-radius:10px;padding:12px 14px;margin-bottom:12px;font-weight:600}
.codr-submit{margin-top:4px}
.codr-reassure{text-align:center;font-size:15px;color:#444;margin:12px 0 0}
.codr-thanks{background:#eef6f1;border:2px solid #b9dcc6;border-radius:14px;padding:16px 18px;margin:0 0 24px;font-size:18px}
@media (max-width:560px){
  .codr-dialog{width:100%;max-width:100%;max-height:100dvh;height:100dvh;border-radius:0;margin:0}
  .codr-fields{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.codr *,.codr-dialog *,.codr *::after,.codr-dialog *::after{animation:none!important;transition:none!important}}
