/* Glow Circle rewards: catalogue, confirmation dialog and public Rewards page (Round 44).
   Palette: forest #235347, sage #8EB69B, mint #F2F8F4, line #E1ECE6. */
.kg-rw-wrap { max-width: 860px; }
.kg-rw-note { background: #f2f8f4; border: 1px solid #e1ecE6; border-radius: 12px; color: #235347; padding: 12px 16px; margin: 12px 0; }
.kg-rw-list { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 10px; }
.kg-rw-item { align-items: center; background: #fff; border: 1px solid #e1ece6; border-radius: 14px; display: grid; gap: 12px; grid-template-columns: 1fr auto auto; padding: 14px 16px; }
.kg-rw-item.is-ready { border-color: #8eb69b; box-shadow: 0 0 0 3px rgba(142,182,155,.18); }
.kg-rw-info strong { color: #173d33; display: block; }
.kg-rw-info span { color: #587066; display: block; font-size: .92rem; margin-top: 2px; }
.kg-rw-info em { color: #235347; display: block; font-size: .85rem; font-style: normal; font-weight: 600; margin-top: 4px; }
.kg-rw-cost { color: #235347; font-size: 1.35rem; font-weight: 600; line-height: 1; text-align: right; }
.kg-rw-cost small { color: #587066; display: block; font-size: .7rem; font-weight: 500; letter-spacing: .04em; margin-top: 4px; text-transform: uppercase; }
.kg-rw-btn[disabled] { cursor: not-allowed; opacity: .45; }
.kg-rw-fine { color: #587066; font-size: .85rem; margin-top: 14px; }
.kg-rw-modal { align-items: center; background: rgba(23,61,51,.55); display: flex; inset: 0; justify-content: center; padding: 20px; position: fixed; z-index: 1000; }
.kg-rw-modal[hidden] { display: none; }
.kg-rw-modal-card { background: #fff; border-radius: 16px; max-width: 420px; padding: 24px; width: 100%; }
.kg-rw-modal-card h2 { color: #173d33; margin: 0 0 8px; }
.kg-rw-modal-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; margin-top: 18px; }
.kg-rw-cancel { background: transparent; border: 1px solid #235347; color: #235347; }
.kg-rw-modal button:focus-visible, .kg-rw-btn:focus-visible { outline: 2px solid #8eb69b; outline-offset: 3px; }
@media (max-width: 560px) {
    .kg-rw-item { grid-template-columns: 1fr auto; }
    .kg-rw-btn { grid-column: 1 / -1; width: 100%; }
}

/* Public Rewards page */
.kg-rwp { background: #f2f8f4; color: #3a554c; padding: 48px 0 72px; }
.kg-rwp-wrap { margin-inline: auto; width: min(960px, calc(100% - 40px)); }
.kg-rwp h1, .kg-rwp h2 { color: #173d33; font-weight: 400; }
.kg-rwp section { background: #fff; border: 1px solid #e1ece6; border-radius: 16px; margin-top: 20px; padding: 24px; }
.kg-rwp-steps { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); list-style: none; margin: 0; padding: 0; }
.kg-rwp-steps li { background: #f2f8f4; border-radius: 12px; padding: 14px; }
.kg-rwp-table-wrap { overflow-x: auto; }
.kg-rwp table { border-collapse: collapse; min-width: 480px; width: 100%; }
.kg-rwp th, .kg-rwp td { border-bottom: 1px solid #e1ece6; padding: 10px 12px; text-align: left; }
.kg-rwp th { background: #235347; color: #fff; font-weight: 500; }
.kg-rwp .kg-rwp-cta { margin-top: 18px; }
@media (max-width: 700px) { .kg-rwp-steps { grid-template-columns: 1fr; } }
