/* MODAL OVERLAY */
.obs-ptq-modal { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.85); z-index:99999; justify-content:center; align-items:center; backdrop-filter:blur(5px); font-family: -apple-system, system-ui, sans-serif; }
.obs-ptq-content { background:#fff; width:95%; max-width:550px; border-radius:16px; position:relative; overflow:hidden; animation: ptqSlideUp 0.3s ease; box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5); }
.obs-ptq-header { background: #111827; color: #fff; padding: 25px; text-align: center; border-bottom: 1px solid #374151; }
.obs-ptq-gold-text { color: #fbbf24; text-transform: uppercase; letter-spacing: 1.5px; font-weight: 800; font-size: 11px; margin-bottom: 5px; }
.obs-ptq-close { position:absolute; top:20px; right:20px; cursor:pointer; color:#9ca3af; font-size: 24px; transition:0.2s; line-height: 1; }
.obs-ptq-close:hover { color: #fff; }
.obs-ptq-body { padding: 30px; }

/* PLANS */
.ptq-plan-row { display: flex; gap: 15px; margin-bottom: 25px; }
.ptq-plan-card { flex: 1; border: 2px solid #e5e7eb; border-radius: 12px; padding: 20px 15px; text-align: center; cursor: pointer; transition: 0.2s; position: relative; background: #fff; }
.ptq-plan-card:hover { border-color: #fbbf24; transform: translateY(-3px); }
.ptq-plan-card.selected { border-color: #d97706; background: #fffbeb; box-shadow: 0 4px 15px rgba(251, 191, 36, 0.2); }
.ptq-plan-title { font-weight: 800; font-size: 14px; color: #4b5563; text-transform: uppercase; margin-bottom: 10px; }
.ptq-price { font-size: 28px; font-weight: 900; color: #1f2937; margin-bottom: 10px; }
.ptq-desc { font-size: 12px; color: #6b7280; line-height: 1.4; }

/* FORMS */
.ptq-section { margin-bottom: 20px; }
.ptq-label { display:block; font-weight:600; margin-bottom:6px; color:#374151; font-size:14px; }
.ptq-input { width:100%; padding:12px; border:2px solid #e5e7eb; border-radius:8px; font-size:15px; box-sizing:border-box; }
.ptq-input:focus { border-color:#fbbf24; outline:none; }
.ptq-user-badge { background:#f0f9ff; border:1px solid #bae6fd; padding:15px; border-radius:8px; }

/* GATEWAYS */
.ptq-gateway-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ptq-gateway-item { border: 1px solid #d1d5db; border-radius: 8px; padding: 12px; display: flex; align-items: center; gap: 8px; cursor: pointer; transition: 0.2s; font-size: 13px; background:#fff; }
.ptq-gateway-item:hover { border-color: #fbbf24; background: #fffbeb; }
.ptq-gateway-item:has(input:checked) { border-color: #d97706; background: #fff7ed; font-weight: bold; color: #d97706; }

/* BUTTONS */
.ptq-btn-primary { width:100%; background: linear-gradient(135deg, #fbbf24 0%, #d97706 100%); color: #fff; border:none; padding: 16px; font-weight: 800; border-radius: 8px; cursor: pointer; font-size: 16px; text-transform: uppercase; letter-spacing: 0.5px; transition: 0.3s; }
.ptq-btn-primary:hover { opacity: 0.95; transform: translateY(-1px); box-shadow: 0 10px 20px rgba(217, 119, 6, 0.3); }
.ptq-btn-primary:disabled { background: #d1d5db; cursor: not-allowed; transform: none; box-shadow: none; }
.ptq-btn-secondary { background: #f3f4f6; color: #374151; border: 1px solid #d1d5db; padding: 0 20px; border-radius: 8px; cursor: pointer; font-weight: bold; transition:0.2s; }
.ptq-btn-secondary:hover { background: #e5e7eb; }

/* GLASS CARD */
.obs-ptq-glass-card {
    background: linear-gradient(135deg, rgba(30,41,59,0.95) 0%, rgba(17,24,39,0.98) 100%);
    border: 1px solid rgba(251, 191, 36, 0.3);
    border-radius: 16px; padding: 25px; color: #fff;
    box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px); max-width: 400px;
    position: relative; overflow: hidden; margin-top: 20px;
}
.ptq-card-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 15px; }
.ptq-badge { background: #fbbf24; color: #000; padding: 4px 10px; border-radius: 4px; font-weight: 800; font-size: 10px; letter-spacing: 1px; text-transform: uppercase; }
.ptq-credits-big { font-size: 56px; font-weight: 900; color: #fff; line-height: 1; text-shadow: 0 0 20px rgba(251,191,36,0.4); margin-bottom: 5px; }
.ptq-credits-label { font-size: 12px; text-transform: uppercase; color: #fbbf24; letter-spacing: 1px; font-weight: 600; }
.ptq-card-footer { margin-top: 25px; text-align: right; }
.ptq-action-btn { background: rgba(251, 191, 36, 0.1); border: 1px solid #fbbf24; color: #fbbf24; padding: 8px 20px; border-radius: 30px; cursor: pointer; transition: 0.3s; font-size: 12px; font-weight: bold; text-transform: uppercase; }
.ptq-action-btn:hover { background: #fbbf24; color: #111; }

@keyframes ptqSlideUp { from { transform: translateY(30px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
@media(max-width: 600px) { .ptq-plan-row, .ptq-gateway-list { flex-direction: column; grid-template-columns: 1fr; } }