/* === LL_FILE_START ===
 * File: smart-offer-public.css
 * Description: Public Smart Offer claim and saved-offer presentation.
 */
.ll-smart-offer {
    margin: 18px 0;
    padding: 20px;
    border: 1px solid #cbd5e1;
    border-radius: 10px;
    background: #f8fafc;
}

.ll-smart-offer__eyebrow {
    margin-bottom: 4px;
    color: #0f7a3d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ll-smart-offer h3 {
    margin: 0 0 8px;
}

.ll-smart-offer-claim-form {
    display: grid;
    gap: 12px;
    margin-top: 16px;
}

.ll-smart-offer-claim-form label:not(.ll-smart-offer__consent) {
    display: grid;
    gap: 5px;
    font-weight: 700;
}

.ll-smart-offer-claim-form input[type="text"],
.ll-smart-offer-claim-form input[type="email"] {
    width: 100%;
    min-height: 42px;
}

.ll-smart-offer__consent {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    font-weight: 400;
}

.ll-smart-offer__consent input {
    margin-top: 4px;
}

.ll-smart-offer__code {
    margin: 18px 0;
    padding: 16px;
    border: 2px dashed #0f7a3d;
    border-radius: 8px;
    background: #fff;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: clamp(26px, 6vw, 38px);
    font-weight: 800;
    letter-spacing: .12em;
    text-align: center;
}

.ll-smart-offer__details {
    display: grid;
    gap: 8px;
    margin: 14px 0 0;
}

.ll-smart-offer__details div {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 8px 0;
    border-bottom: 1px solid #e2e8f0;
}

.ll-smart-offer__details dt {
    font-weight: 700;
}

.ll-smart-offer__details dd {
    margin: 0;
    text-align: right;
}

.ll-smart-offer__status,
.ll-smart-offer__notice {
    margin-top: 12px;
}

.ll-smart-offer__status.is-error,
.ll-smart-offer__notice--error {
    color: #9f1239;
}

.ll-smart-offer__status.is-success,
.ll-smart-offer__notice--success {
    color: #166534;
}

.ll-smart-offer__notice--warning {
    color: #92400e;
}
