.account-rewards { margin: 30px 0; padding: 26px; border: 1px solid rgba(196,168,120,.35); background: radial-gradient(ellipse at 100% 0, rgba(196,168,120,.1), transparent 60%); }
.reward-heading, .reward-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.reward-heading h3 { font: 500 28px var(--serif); margin: 12px 0; }
.reward-scroll { padding: 26px; margin: 20px 0; border: 1px solid rgba(196,168,120,.4); background: linear-gradient(125deg, rgba(196,168,120,.08), rgba(112,172,135,.04)); position: relative; }
.reward-scroll::before { content: ''; position: absolute; inset: 5px; border: 1px solid rgba(196,168,120,.1); pointer-events: none; }
.reward-scroll h4 { font: 500 24px var(--serif); color: var(--gold); margin: 20px 0; }
.reward-question { white-space: pre-wrap; overflow-wrap: anywhere; font: 18px/1.9 var(--serif); color: #e4dcc7; }
.reward-status { color: var(--jade); font: 11px var(--mono); }
.reward-prize { color: var(--gold); line-height: 1.8; }
.reward-code-form { padding: 24px; background: rgba(157,201,172,.05); border: 1px solid var(--line); margin: 22px 0; }
.reward-code-form input { text-transform: uppercase; }
.reward-code-form h4, .account-rewards > h4 { font: 500 22px var(--serif); }
.reward-code-form button, .reward-answer-form button { margin-top: 16px; }
.reward-history-entry { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; border-top: 1px solid var(--line); padding: 17px 0; }
.reward-history-entry small { flex-basis: 100%; color: #a0afa7; }
.reward-editor-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px; margin-top: 24px; }
.reward-editor-layout:has(> div:first-child:empty) { grid-template-columns: minmax(0,1fr); }
.reward-editor-layout > div:first-child:empty { display: none; }
.reward-editor-layout:has(> div:first-child:empty) .reward-admin-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; align-items: start; }
.reward-editor, .reward-admin-card { border: 1px solid var(--line); padding: 24px; background: rgba(157,201,172,.025); min-width: 0; }
.reward-editor { display: grid; gap: 18px; }
.reward-editor h3, .reward-admin-card h3 { font: 500 24px var(--serif); color: var(--gold); overflow-wrap: anywhere; }
.reward-admin-card { margin-bottom: 20px; overflow-wrap: anywhere; }
.reward-admin-card > small { display: block; color: #a0afa7; margin: 12px 0; }
.reward-admin-card label { display: block; margin: 16px 0; }
.reward-admin-card input, .reward-editor input:not([type="checkbox"]), .reward-editor textarea { width: 100%; padding: 12px; color: var(--paper); background: #0d171b; border: 1px solid var(--line); font: inherit; margin-top: 8px; }
.reward-admin-card input { margin-top: 12px; font-family: var(--mono); font-size: 13px; }
.reward-editor label { display: grid; gap: 8px; }
.reward-editor label:has(input[type="checkbox"]), .reward-start-confirm { display: flex; align-items: flex-start; gap: 12px; }
.reward-editor textarea { min-height: 100px; resize: vertical; }
.reward-editor select { width: 100%; padding: 12px; color: var(--paper); background: #0d171b; border: 1px solid var(--line); font: inherit; }
.reward-editor input[type="checkbox"], .reward-start-confirm input { width: auto; margin: 3px 0 0; flex: 0 0 auto; }
.reward-actions { justify-content: flex-start; margin-top: 18px; }
.reward-preview-dialog { width: min(760px, calc(100vw - 32px)); max-height: 90vh; overflow-y: auto; background: #101c20; color: var(--paper); border: 1px solid var(--gold); padding: 24px; }
.reward-preview-dialog::backdrop { background: rgba(0,0,0,.8); backdrop-filter: blur(5px); }
.reward-preview-dialog > button { margin: 18px 12px 0 0; }
.reward-start-confirm { line-height: 1.8; margin-top: 20px; }
@media (max-width: 850px) {
  .reward-editor-layout { grid-template-columns: minmax(0,1fr); }
  .reward-editor-layout:has(> div:first-child:empty) .reward-admin-list { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 540px) {
  .account-rewards, .reward-scroll, .reward-code-form, .reward-editor, .reward-admin-card { padding: 16px; }
  .reward-heading h3 { font-size: 24px; }
  .reward-question { font-size: 16px; }
}
