.zrr-dashboard,.zrr-box{background:#fff;border:1px solid #eee;border-radius:16px;padding:22px;margin:20px 0;box-shadow:0 6px 20px rgba(0,0,0,.04)}
.zrr-points-card{display:block;background:linear-gradient(135deg,#fff7ed,#fff);border:1px solid #f4d2a4;border-radius:20px;padding:22px 24px;margin:16px 0;box-shadow:0 8px 26px rgba(154,89,12,.08)}.zrr-points-card span{display:block;font-size:15px;font-weight:700;color:#8a4b0f;margin-bottom:6px}.zrr-points-card strong{display:block;font-size:42px;line-height:1.1;font-weight:900;color:#111}.zrr-points-card em{display:inline-block;margin-top:12px;font-style:normal;background:#fff;border:1px solid #f4d2a4;border-radius:999px;padding:8px 14px;font-weight:800;color:#9a3412}
.zrr-reward-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:16px 0}.zrr-reward-card{border:1px solid #eee;border-radius:16px;padding:16px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.04)}.zrr-reward-card img{width:100%;height:auto;border-radius:12px}.zrr-reward-card h4{margin:12px 0 8px}.zrr-reward-meta{font-size:14px;margin:4px 0}.zrr-reward-desc{font-size:14px;color:#555;margin:10px 0}
.zrr-button{display:inline-block;border:0;border-radius:999px;background:#111;color:#fff!important;padding:10px 18px;text-decoration:none;cursor:pointer;font-weight:700}.zrr-button:hover{opacity:.86}.zrr-table{width:100%;border-collapse:collapse;margin:12px 0}.zrr-table th,.zrr-table td{border-bottom:1px solid #eee;padding:10px;text-align:left;font-size:14px}.zrr-table th{background:#fafafa}

/* ポイント獲得・ログインボーナス・応募完了ポップ（中央表示） */
.zrr-toast{position:fixed;left:50%;top:50%;z-index:99999;display:flex;gap:16px;align-items:center;width:min(520px,calc(100vw - 36px));background:#111;color:#fff;border-radius:24px;padding:22px 24px;box-shadow:0 20px 60px rgba(0,0,0,.32);opacity:0;transform:translate(-50%,calc(-50% + 18px)) scale(.96);transition:opacity .25s ease,transform .25s ease;font-family:inherit;text-align:left}
.zrr-toast.is-show{opacity:1;transform:translate(-50%,-50%) scale(1)}
.zrr-toast-icon{width:58px;height:58px;border-radius:999px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;font-size:30px;flex:0 0 58px}.zrr-toast-title{font-weight:900;font-size:22px;line-height:1.35}.zrr-toast-sub{font-size:16px;opacity:.92;margin-top:6px;line-height:1.5}.zrr-toast-point{background:linear-gradient(135deg,#111,#3b2b13)}.zrr-toast-success{background:linear-gradient(135deg,#111,#12351f)}
@media (max-width: 600px){.zrr-toast{width:calc(100vw - 32px);padding:20px 18px;border-radius:22px}.zrr-toast-icon{width:50px;height:50px;font-size:26px;flex-basis:50px}.zrr-toast-title{font-size:19px}.zrr-toast-sub{font-size:14px}}

.zrr-apply-success{background:#ecfdf5;border:1px solid #bbf7d0;color:#14532d;border-radius:14px;padding:14px 16px;margin:16px 0;font-size:15px;line-height:1.7}
.zrr-applied-label{display:inline-block;border-radius:999px;background:#f3f4f6;color:#374151;padding:10px 18px;font-weight:700;margin-top:8px}
.zrr-shortage{display:inline-block;border-radius:999px;background:#fff7ed;color:#9a3412;padding:10px 18px;font-weight:700;margin-top:8px}

@media (max-width: 600px){.zrr-points-card{padding:20px}.zrr-points-card strong{font-size:36px}.zrr-points-card em{font-size:14px}}
