.point-exchange{--point-exchange-line:var(--line,var(--border,#e0e4eb));--point-exchange-brand:var(--brand,var(--primary,#e43146));--point-exchange-muted:#5c6879;min-width:0;color:var(--text);overflow-wrap:anywhere}
[data-theme=dark] .point-exchange{--point-exchange-muted:#adb8c9}
.point-exchange .page-heading{margin-bottom:22px}.point-exchange .page-heading p{color:var(--point-exchange-muted);line-height:1.8}
.point-exchange-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:var(--surface);border:1px solid var(--point-exchange-line);border-radius:12px}
.point-exchange-summary>div{min-width:0}.point-exchange-summary span{display:block;color:var(--point-exchange-muted);font-size:12px;margin-bottom:6px}.point-exchange-summary strong{font-size:28px;line-height:1.35}.point-exchange-summary strong small{font-size:15px;color:var(--point-exchange-brand)}.point-exchange-summary>.btn{flex-shrink:0;font-size:12px}
.point-exchange-monthly{margin-top:12px;padding:19px 23px;border:1px solid var(--point-exchange-line);border-radius:12px;background:var(--surface)}.point-exchange-monthly-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.point-exchange-monthly-top>div{min-width:0}.point-exchange-monthly h2{font-size:14px;line-height:1.6;margin:0}.point-exchange-monthly-top p{font-size:11px;line-height:1.8;color:var(--point-exchange-muted);margin:3px 0 0}.point-exchange-monthly-top>strong{font-size:25px;line-height:1.5}.point-exchange-monthly-top>strong small{font-size:12px;font-weight:600;margin-left:4px;color:var(--point-exchange-muted)}.point-exchange-monthly-remaining{font-size:12px;line-height:1.8;margin:12px 0 0}.point-exchange-monthly-remaining strong{margin-left:8px;color:var(--point-exchange-brand)}.point-exchange-monthly-help,.point-exchange-monthly-checked{font-size:11px;line-height:1.8;color:var(--point-exchange-muted);margin:10px 0 0}.point-exchange-monthly-checked{font-size:10px;margin-top:5px}
.point-exchange-note{padding:16px 18px;margin:16px 0 25px;border:1px solid var(--point-exchange-line);border-radius:10px;background:var(--surface-soft,var(--bg));font-size:12px;color:var(--point-exchange-muted);line-height:1.9}
.point-exchange-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 14px}.point-exchange-heading h2{font-size:19px;margin:0}.point-exchange-heading>span:not(.point-exchange-status){font-size:11px;color:var(--point-exchange-muted)}
.point-exchange-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.point-exchange-product{display:flex;flex-direction:column;min-width:0;padding:22px;border:1px solid var(--point-exchange-line);border-radius:12px;background:var(--surface)}.point-exchange-product.is-selected{border-color:var(--point-exchange-brand);box-shadow:0 0 0 1px var(--point-exchange-brand)}
.point-exchange-image{display:block;width:100%;aspect-ratio:4/3;margin:0 0 18px;overflow:hidden;border:1px solid var(--point-exchange-line);border-radius:9px;background:var(--surface-soft,var(--bg))}.point-exchange-image img{display:block;width:100%;height:100%;object-fit:contain}.point-exchange-image.is-detail{max-width:480px;margin-top:14px}
.point-exchange-product-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:14px}.point-exchange-kind{font-size:11px;font-weight:700;color:var(--point-exchange-muted);line-height:1.7}.point-exchange-price{font-size:20px;font-weight:800;line-height:1.25}.point-exchange-price small{font-size:11px;color:var(--point-exchange-brand)}
.point-exchange-product h3{font-size:18px;line-height:1.5}.point-exchange-reward{font-size:13px;font-weight:700;line-height:1.7;margin:7px 0 10px}.point-exchange-description{font-size:12px;color:var(--point-exchange-muted);line-height:1.8;white-space:pre-wrap;margin:0 0 13px}.point-exchange-requirements{padding:0 0 0 16px;margin:0 0 18px;font-size:11px;line-height:1.9;color:var(--point-exchange-muted)}.point-exchange-product>.btn{margin-top:auto;font-size:12px}
.point-exchange .panel{border-color:var(--point-exchange-line)}.point-exchange-apply{scroll-margin-top:125px}.point-exchange-apply>.point-exchange-heading,.point-exchange-detail>.point-exchange-heading{margin-top:0}.point-exchange-apply>h3,.point-exchange-detail-name{font-size:19px;line-height:1.6;margin-bottom:14px}
.point-exchange-facts{margin:14px 0}.point-exchange-facts>div{display:grid;grid-template-columns:125px minmax(0,1fr);gap:10px;padding:8px 0;font-size:12px;line-height:1.8;border-bottom:1px solid var(--point-exchange-line)}.point-exchange-facts>div:last-child{border-bottom:0}.point-exchange-facts dt{color:var(--point-exchange-muted)}.point-exchange-facts dd{margin:0;min-width:0;font-weight:600;overflow-wrap:anywhere}.point-exchange-network{font-weight:800;letter-spacing:.02em}
.point-exchange-help{font-size:12px;line-height:1.9;color:var(--point-exchange-muted);margin:12px 0}.point-exchange-help strong{color:var(--text)}.point-exchange-conditions{font-size:12px;line-height:1.9;white-space:pre-wrap;padding:14px;border-radius:8px;background:var(--surface-soft,var(--bg));margin:14px 0;color:var(--point-exchange-muted)}
.point-exchange-eligibility{padding:15px;border:1px solid var(--point-exchange-line);border-radius:9px;background:var(--surface-soft,var(--bg));font-size:12px;line-height:1.8;margin:17px 0}.point-exchange-eligibility ul{padding-left:18px;margin:8px 0 0;color:var(--point-exchange-muted)}.point-exchange-eligibility a{display:inline-block;color:var(--point-exchange-brand);font-weight:700;margin-top:10px}
.point-exchange-activity{margin:20px 0;padding:17px;border:1px solid var(--point-exchange-line);border-radius:10px;background:var(--surface-soft,var(--bg))}.point-exchange-activity h4{font-size:14px;margin:0}.point-exchange-activity .point-exchange-help{margin:8px 0 12px}.point-exchange-activity-period{font-size:11px;color:var(--point-exchange-muted);line-height:1.8;margin:0 0 12px}.point-exchange-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.point-exchange-activity-item{display:flex;flex-direction:column;gap:6px;min-width:0;padding:14px;border-radius:8px;background:var(--surface)}.point-exchange-activity-item>span:first-child{font-size:12px;color:var(--point-exchange-muted)}.point-exchange-activity-item strong{font-size:24px;line-height:1.4}.point-exchange-activity-item strong small{font-size:11px;margin-left:4px;font-weight:500}.point-exchange-activity-item p{font-size:11px;line-height:1.6;color:var(--point-exchange-muted);margin:0}.point-exchange-activity-item progress{display:block;appearance:none;width:100%;height:6px;border:0;border-radius:6px;overflow:hidden;background:var(--point-exchange-line);accent-color:var(--point-exchange-brand)}.point-exchange-activity-item progress::-webkit-progress-bar{background:var(--point-exchange-line);border-radius:6px}.point-exchange-activity-item progress::-webkit-progress-value{background:var(--point-exchange-brand);border-radius:6px}.point-exchange-activity-item progress::-moz-progress-bar{background:var(--point-exchange-brand);border-radius:6px}.point-exchange-activity-status{font-size:11px;font-weight:700;line-height:1.7}
.point-exchange-form{margin-top:20px}.point-exchange-fields{display:flex;flex-direction:column;gap:17px;margin:0;padding:0;border:0;min-width:0}.point-exchange-fields .form-help{color:var(--point-exchange-muted)}.point-exchange-fields:disabled .form-input{opacity:.65}.point-exchange-fields button:disabled{opacity:.5;cursor:not-allowed}.point-exchange-consent{line-height:1.9;color:var(--point-exchange-muted)}.point-exchange-consent input{flex-shrink:0}.point-exchange-fields>.btn{align-self:flex-start;min-height:44px}.point-exchange-cancel{margin:0}.point-exchange-cancel>.btn{font-size:12px;min-height:40px}
.point-exchange-history{margin-top:30px;scroll-margin-top:125px}.point-exchange-history-list{display:flex;flex-direction:column;gap:12px}.point-exchange-history-card{padding:21px 23px;border:1px solid var(--point-exchange-line);border-radius:12px;background:var(--surface);min-width:0}.point-exchange-history-card>.point-exchange-heading{margin:0 0 10px}.point-exchange-history-card h3{font-size:16px;line-height:1.6}.point-exchange-history-card .point-exchange-facts{margin-bottom:14px}.point-exchange-history-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.point-exchange-history-actions>.btn{font-size:12px;min-height:40px}
.point-exchange-status{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:6px;padding:5px 9px;font-size:11px;line-height:1.5;font-weight:700;color:#576174;background:#f1f3f7}.point-exchange-status.status-pending{color:#8c5c00;background:#fff7df}.point-exchange-status.status-approved{color:#1c639a;background:#eaf3ff}.point-exchange-status.status-processing{color:#7044a7;background:#f4edff}.point-exchange-status.status-completed{color:#216b43;background:#ebf8f0}.point-exchange-status.status-rejected{color:#9f2a3b;background:#fff0f2}
[data-theme=dark] .point-exchange-status{color:#bbc5d8;background:#303641}[data-theme=dark] .point-exchange-status.status-pending{color:#ffd793;background:#3c311e}[data-theme=dark] .point-exchange-status.status-approved{color:#9ccaff;background:#1d334d}[data-theme=dark] .point-exchange-status.status-processing{color:#d3b3ff;background:#322345}[data-theme=dark] .point-exchange-status.status-completed{color:#a6e1b5;background:#20382a}[data-theme=dark] .point-exchange-status.status-rejected{color:#ffa6b3;background:#482b31}
.point-exchange-detail{scroll-margin-top:125px}.point-exchange-admin-note{padding:15px 16px;border-radius:9px;background:var(--surface-soft,var(--bg));margin:17px 0}.point-exchange-admin-note strong{font-size:12px}.point-exchange-admin-note p{font-size:12px;color:var(--point-exchange-muted);line-height:1.9;white-space:pre-wrap;margin:7px 0 0}.point-exchange-empty h2,.point-exchange-empty h3{font-size:17px;margin-bottom:10px}.point-exchange-empty p{font-size:12px;color:var(--point-exchange-muted);line-height:1.9;margin-bottom:16px}.point-exchange-empty a:not(.btn){color:var(--point-exchange-brand);font-size:12px;font-weight:700}
.point-exchange a:focus-visible,.point-exchange button:focus-visible{outline:3px solid var(--point-exchange-brand);outline-offset:3px}.point-exchange .form-input:focus-visible{outline:2px solid var(--point-exchange-brand);outline-offset:2px}
@media(max-width:560px){.point-exchange-summary{padding:18px 16px;gap:12px}.point-exchange-summary strong{font-size:25px}.point-exchange-summary>.btn{font-size:11px;padding:8px 10px}.point-exchange-heading{gap:10px;align-items:flex-start}.point-exchange-heading h2{font-size:18px}.point-exchange-heading>span:not(.point-exchange-status){max-width:45%;text-align:right;line-height:1.7}.point-exchange-products{grid-template-columns:minmax(0,1fr);gap:12px}.point-exchange-product{padding:19px}.point-exchange-product h3{font-size:17px}.point-exchange-product-top{margin-bottom:10px}.point-exchange-note{padding:14px 15px;font-size:11px}.point-exchange-facts>div{grid-template-columns:104px minmax(0,1fr);gap:8px;font-size:11px}.point-exchange-apply>h3,.point-exchange-detail-name{font-size:17px}.point-exchange-fields>.btn{width:100%;align-self:stretch;font-size:12px}.point-exchange-history-card{padding:18px 16px}.point-exchange-history-card h3{font-size:15px}.point-exchange-history-actions>.btn,.point-exchange-cancel>.btn{font-size:11px}.point-exchange-status{font-size:10px;padding:5px 8px}}
@media(prefers-reduced-motion:reduce){.point-exchange *{scroll-behavior:auto!important}}
@media(max-width:360px){.point-exchange-activity{padding:14px}.point-exchange-activity-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:560px){.point-exchange-monthly{padding:17px 16px}.point-exchange-monthly-top>strong{font-size:23px}}
