.report-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .15s ease}.report-modal{max-width:480px;width:100%;max-height:85vh;overflow:auto;border-radius:16px;background:var(--bg);box-shadow:0 20px 60px rgba(0,0,0,.25);animation:slideUp .2s ease}.report-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.report-modal-title-row{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:var(--fw-semibold)}.report-modal-back{font-size:18px;padding:2px 4px}.report-modal-back,.report-modal-close{background:none;border:none;cursor:pointer;color:var(--muted)}.report-modal-close{padding:4px;border-radius:6px;transition:background .15s}.report-modal-close:hover{background:var(--panel)}.report-modal-body{padding:20px}.report-hint{font-size:14px;color:var(--muted);margin-bottom:12px}.report-types-list{display:flex;flex-direction:column;gap:6px}.report-type-btn{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px solid var(--border);border-radius:12px;background:var(--bg);cursor:pointer;transition:all .15s;text-align:left;font-size:14px;color:var(--text)}.report-type-btn:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 5%,var(--bg))}.report-type-icon{font-size:20px;flex-shrink:0}.report-type-label{flex:1 1;font-weight:var(--fw-medium)}.report-type-arrow{color:var(--muted);font-size:16px}.report-confirm{text-align:center;padding:10px 0}.report-confirm-icon{margin-bottom:16px}.report-confirm-text{font-size:16px;font-weight:var(--fw-semibold);margin-bottom:16px}.report-confirm-detail{display:flex;justify-content:space-between;padding:10px 14px;background:var(--panel);border-radius:8px;margin-bottom:8px;font-size:14px}.report-confirm-label{color:var(--muted)}.report-confirm-value{font-weight:var(--fw-medium);text-align:right;max-width:65%;overflow-wrap:break-word;word-break:break-word}.report-confirm-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.report-textarea{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .15s}.report-textarea:focus{outline:none;border-color:var(--primary)}.report-other{padding:4px 0}.report-success{text-align:center;padding:20px 0}.report-success-icon{width:60px;height:60px;margin:0 auto 16px;border-radius:50%;background:color-mix(in srgb,var(--success) 12%,var(--bg));display:flex;align-items:center;justify-content:center}.report-success h3{font-size:18px;margin-bottom:8px}.report-success p{color:var(--muted);font-size:14px;margin-bottom:12px;line-height:1.5}.report-ticket-id{font-weight:var(--fw-semibold);color:var(--primary)}.btn-report{border:1.5px solid var(--border);background:var(--bg);color:var(--muted);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.btn-report:hover{border-color:var(--danger);color:var(--danger);background:color-mix(in srgb,var(--danger) 6%,var(--bg))}.prop-page-btn-report{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;border:1.5px solid var(--border);border-radius:10px;background:var(--bg);color:var(--muted);cursor:pointer;font-size:14px;font-family:inherit;transition:all .15s}.prop-page-btn-report:hover{border-color:var(--danger);color:var(--danger);background:color-mix(in srgb,var(--danger) 5%,var(--bg))}@media (max-width:560px){.report-modal-overlay{align-items:flex-end;padding:0;bottom:var(--kb-height,0);transition:bottom .15s ease}.report-modal{max-height:calc(90dvh - var(--kb-height, 0px));border-radius:16px 16px 0 0;width:100%;max-width:100%}}.topup-modal-overlay{--topup-blue:#2563eb;--topup-blue-hover:#1d4ed8;--topup-blue-soft:rgba(37,99,235,.08);position:fixed;inset:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .15s ease}.topup-modal{max-width:460px;width:100%;max-height:90vh;overflow:auto;border-radius:16px;background:var(--bg);box-shadow:0 20px 60px rgba(0,0,0,.25);animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.topup-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.topup-modal-title{font-size:16px;font-weight:var(--fw-semibold)}.topup-modal-close{background:none;border:none;cursor:pointer;color:var(--muted);padding:4px;border-radius:6px;transition:background .15s;display:inline-flex;align-items:center;justify-content:center}.topup-modal-close:hover{background:var(--panel)}.topup-modal-close:disabled{opacity:.5;cursor:not-allowed}.topup-modal-body{padding:20px;display:flex;flex-direction:column;gap:12px}.topup-modal-hint{font-size:14px;color:var(--muted);margin:0}.topup-loading{font-size:13px;color:var(--muted);text-align:center;padding:16px}.topup-packages{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}@media (max-width:420px){.topup-packages{grid-template-columns:1fr}}.topup-package{position:relative;text-align:left;padding:14px 14px 12px;background:var(--panel);border:1px solid var(--border);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s,transform .05s;color:var(--text)}.topup-package:hover:not(:disabled){border-color:var(--topup-blue,#2563eb)}.topup-package:active:not(:disabled){transform:scale(.99)}.topup-package.active{border-color:var(--topup-blue,#2563eb);background:var(--topup-blue-soft,rgba(37,99,235,.08));box-shadow:0 0 0 2px var(--topup-blue-soft,rgba(37,99,235,.08))}.topup-package:disabled{opacity:.5;cursor:not-allowed}.topup-package-bonus-badge{position:absolute;top:-8px;right:10px;font-size:11px;font-weight:var(--fw-bold);letter-spacing:.3px;color:#fff;background:var(--success);padding:3px 8px;border-radius:999px}.topup-package-keys{display:inline-flex;align-items:center;gap:6px;color:var(--topup-blue,#2563eb);font-size:22px}.topup-package-keys svg{width:20px;height:20px}.topup-package-total{font-size:22px;font-weight:var(--fw-bold);color:var(--text)}.topup-package-meta{font-size:12px;color:var(--muted)}.topup-package-breakdown{font-weight:var(--fw-medium)}.topup-package-price{font-size:14px;font-weight:var(--fw-semibold);color:var(--text);margin-top:2px}.topup-selected-summary{font-size:13px;color:var(--muted);background:var(--panel);padding:8px 12px;border-radius:8px;border:1px dashed var(--border)}.topup-error{font-size:13px;color:var(--danger);padding:10px 12px;background:color-mix(in srgb,var(--danger) 8%,transparent);border:1px solid color-mix(in srgb,var(--danger) 20%,transparent);border-radius:8px}.topup-provider-info{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--panel);border-radius:10px;margin-top:4px}.topup-provider-badge{font-size:12px;font-weight:var(--fw-bold);color:#fff;background:#00d4aa;padding:4px 10px;border-radius:6px;letter-spacing:.3px}.topup-provider-note{font-size:12px;color:var(--muted);flex:1 1}.topup-submit-btn{margin-top:8px;padding:14px 24px;background:var(--topup-blue,#2563eb);border:none;border-radius:12px;font-size:16px;font-weight:var(--fw-semibold);color:#fff;cursor:pointer;transition:background .15s}.topup-submit-btn:hover:not(:disabled){background:var(--topup-blue-hover,#1d4ed8)}.topup-submit-btn:disabled{background:var(--border-strong,#94a3b8);cursor:not-allowed}.topup-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;font-size:14px;font-weight:var(--fw-medium);margin-bottom:12px;border:1px solid transparent}.topup-banner--success{background:color-mix(in srgb,var(--success) 12%,transparent);border-color:color-mix(in srgb,var(--success) 30%,transparent);color:var(--success)}.topup-banner--pending{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent)}.topup-banner--cancelled{background:var(--panel);border-color:var(--border);color:var(--muted)}.topup-banner-close{margin-left:auto;background:none;border:none;cursor:pointer;color:inherit;padding:2px;display:inline-flex;opacity:.7;transition:opacity .15s}.topup-banner-close:hover{opacity:1}