/* IWT Store — Frontend Account & Checkout Styles
   Built & Developed by Instant Web Tools, LLC */

.iwt-account-wrap { max-width:780px; margin:0 auto; font-family:Arial,Helvetica,sans-serif; }

/* Login box */
.iwt-login-box { background:#fff; border:1px solid #E2E8F0; border-radius:10px; padding:40px; max-width:420px; margin:0 auto; box-shadow:0 2px 12px rgba(0,0,0,.06); }
.iwt-login-box h2 { margin:0 0 10px; color:#0A2540; font-size:22px; }
.iwt-input { width:100%; padding:10px 14px; border:1px solid #D1D5DB; border-radius:6px; font-size:15px; margin-bottom:12px; box-sizing:border-box; }
.iwt-input:focus { outline:none; border-color:#0073AA; box-shadow:0 0 0 3px rgba(0,115,170,.12); }

/* Buttons */
.iwt-btn { background:#0073AA; color:#fff; border:none; border-radius:6px; padding:11px 22px; font-size:14px; font-weight:700; cursor:pointer; display:inline-block; text-decoration:none; }
.iwt-btn:hover { background:#005f8d; }
.iwt-btn-sm { padding:7px 14px; font-size:13px; }
.iwt-btn-ghost { background:transparent; color:#0073AA; border:1px solid #0073AA; }
.iwt-btn-ghost:hover { background:#E8F4FD; }
.iwt-btn:disabled { opacity:.6; cursor:not-allowed; }

/* Account header */
.iwt-account-header { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:24px; }
.iwt-account-header h2 { margin:0; color:#0A2540; font-size:22px; }
.iwt-sub { margin:4px 0 0; color:#6B7280; font-size:14px; }

/* Order cards */
.iwt-order-card { background:#fff; border:1px solid #E2E8F0; border-radius:10px; padding:20px 24px; margin-bottom:20px; box-shadow:0 1px 4px rgba(0,0,0,.05); }
.iwt-order-header { display:flex; align-items:center; gap:12px; margin-bottom:16px; padding-bottom:14px; border-bottom:1px solid #F1F5F9; flex-wrap:wrap; }
.iwt-order-num { font-weight:700; color:#0A2540; font-size:15px; }
.iwt-order-date { color:#6B7280; font-size:13px; margin-left:auto; }
.iwt-order-body { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.iwt-order-col { display:flex; flex-direction:column; }
.iwt-label { font-size:11px; font-weight:700; color:#6B7280; text-transform:uppercase; letter-spacing:.5px; margin-bottom:3px; }

/* License row */
.iwt-license-row { background:#F8FAFC; border:1px solid #E2E8F0; border-radius:8px; padding:14px 16px; margin-bottom:16px; }
.iwt-key-display { display:flex; align-items:center; gap:10px; margin:6px 0 8px; }
.iwt-key-display code { background:#0A2540; color:#fff; font-size:14px; padding:7px 14px; border-radius:4px; letter-spacing:2px; font-family:'Courier New',monospace; }
.iwt-copy-key { background:transparent; border:1px solid #D1D5DB; border-radius:4px; padding:4px 10px; font-size:12px; cursor:pointer; color:#374151; }
.iwt-copy-key:hover { background:#F1F5F9; }
.iwt-key-meta { display:flex; gap:12px; font-size:12px; color:#6B7280; flex-wrap:wrap; align-items:center; }

/* Order actions */
.iwt-order-actions { display:flex; gap:10px; flex-wrap:wrap; }
.iwt-msg { font-size:13px; color:#059669; margin:8px 0 0; }

/* Badges */
.iwt-badge { display:inline-block; padding:2px 8px; border-radius:10px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
.iwt-status-complete, .iwt-lic-active             { background:#D1FAE5; color:#065F46; }
.iwt-status-pending,  .iwt-lic-pending-activation { background:#FEF3C7; color:#B45309; }
.iwt-status-refunded, .iwt-lic-revoked            { background:#FEE2E2; color:#991B1B; }

/* Empty state */
.iwt-empty-state { text-align:center; padding:48px; color:#6B7280; background:#F8FAFC; border-radius:10px; border:1px dashed #E2E8F0; }

/* Buy button */
.iwt-buy-wrap { margin:16px 0; }
.iwt-buy-btn { background:#0073AA; color:#fff; border:none; border-radius:6px; padding:14px 28px; font-size:16px; font-weight:700; cursor:pointer; }
.iwt-buy-btn:hover { background:#005f8d; }
.iwt-buy-btn:disabled { opacity:.6; cursor:not-allowed; }
.iwt-buy-msg { font-size:13px; margin:8px 0 0; color:#DC2626; }

@media (max-width:560px) {
  .iwt-order-body { grid-template-columns:1fr; }
  .iwt-account-header { flex-direction:column; gap:12px; }
}

/* ── IWT Product Grid & Cards ──────────────────────────────────────────────── */

.iwt-products-grid {
	display: grid;
	gap: 24px;
	margin: 24px 0;
}
.iwt-cols-1 { grid-template-columns: 1fr; max-width: 560px; }
.iwt-cols-2 { grid-template-columns: repeat(2, 1fr); }
.iwt-cols-3 { grid-template-columns: repeat(3, 1fr); }

.iwt-single-product {
	max-width: 480px;
	margin: 16px 0;
}

.iwt-product-card {
	background: #ffffff;
	border: 1.5px solid #e5e9f0;
	border-radius: 16px;
	padding: 28px;
	display: flex;
	flex-direction: column;
	position: relative;
	transition: box-shadow 0.2s, transform 0.2s, border-color 0.2s;
	overflow: hidden;
}
.iwt-product-card:hover {
	box-shadow: 0 8px 32px rgba(0,0,0,0.10);
	transform: translateY(-3px);
}
.iwt-product-card.iwt-featured {
	border-color: #e94560;
	background: linear-gradient(160deg, #fff8f9 0%, #ffffff 60%);
	box-shadow: 0 4px 20px rgba(233, 69, 96, 0.12);
}

/* Badge */
.iwt-product-badge {
	display: inline-block;
	background: #ffd200;
	color: #1a1a2e;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	padding: 4px 10px;
	border-radius: 6px;
	margin-bottom: 16px;
	width: fit-content;
}
.iwt-product-card.iwt-featured .iwt-product-badge {
	background: #e94560;
	color: #fff;
}

/* Body */
.iwt-product-body {
	flex: 1;
}
.iwt-product-name {
	font-size: 20px;
	font-weight: 800;
	color: #1a1a2e;
	margin: 0 0 12px;
	line-height: 1.2;
}
.iwt-product-desc {
	font-size: 14px;
	color: #555;
	line-height: 1.7;
	margin: 0 0 20px;
}

/* Footer */
.iwt-product-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-top: 20px;
	border-top: 1px solid #eef0f8;
	flex-wrap: wrap;
}
.iwt-product-price {
	font-size: 28px;
	font-weight: 800;
	color: #1a1a2e;
	letter-spacing: -1px;
	white-space: nowrap;
}
.iwt-product-card.iwt-featured .iwt-product-price {
	color: #e94560;
}

/* Buy button override for product cards */
.iwt-product-card .iwt-buy-btn {
	background: #1a1a2e;
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 11px 20px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.2s, transform 0.15s;
	white-space: nowrap;
	font-family: inherit;
}
.iwt-product-card .iwt-buy-btn:hover {
	background: #0f3460;
	transform: translateY(-1px);
}
.iwt-product-card.iwt-featured .iwt-buy-btn {
	background: #e94560;
}
.iwt-product-card.iwt-featured .iwt-buy-btn:hover {
	background: #d63350;
}
.iwt-product-card .iwt-buy-msg {
	font-size: 12px;
	color: #e94560;
	margin: 6px 0 0;
}
.iwt-no-products {
	color: #888;
	font-style: italic;
}

/* Admin shortcode reference */
.iwt-sc-box {
	background: #f4f6f8;
	border: 1px solid #dde;
	border-radius: 6px;
	padding: 12px 16px;
	font-size: 14px;
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}
.iwt-sc-inline {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

@media (max-width: 768px) {
	.iwt-cols-2,
	.iwt-cols-3 { grid-template-columns: 1fr; }
	.iwt-product-footer { flex-direction: column; align-items: flex-start; }
}
