/* AI Tool Power - Premium Theme Marketplace — Public Styles */
:root{
	--atpm-primary:#6d28d9;
	--atpm-primary-dark:#5b21b6;
	--atpm-accent:#f59e0b;
	--atpm-bg:#ffffff;
	--atpm-bg-alt:#f8f7fb;
	--atpm-text:#1f2937;
	--atpm-text-muted:#6b7280;
	--atpm-border:#e5e7eb;
	--atpm-radius:14px;
	--atpm-shadow:0 4px 20px rgba(17,17,17,.06);
}
@media (prefers-color-scheme: dark){
	:root{
		--atpm-bg:#111014; --atpm-bg-alt:#18171d; --atpm-text:#f1f0f5; --atpm-text-muted:#a3a0ad; --atpm-border:#2a2830;
		--atpm-shadow:0 4px 20px rgba(0,0,0,.35);
	}
}
.atpm-wrap{ max-width:1280px; margin:0 auto; padding:32px 20px; color:var(--atpm-text); }
.atpm-wrap *{ box-sizing:border-box; }
.atpm-btn{ display:inline-block; padding:12px 22px; border-radius:10px; font-weight:600; text-decoration:none; cursor:pointer; border:none; font-size:14px; transition:transform .15s ease, box-shadow .15s ease; }
.atpm-btn:hover{ transform:translateY(-2px); }
.atpm-btn-primary{ background:linear-gradient(135deg,var(--atpm-primary),var(--atpm-primary-dark)); color:#fff; box-shadow:0 6px 18px rgba(109,40,217,.35); }
.atpm-btn-ghost{ background:transparent; border:1.5px solid var(--atpm-border); color:var(--atpm-text); }
.atpm-btn-full{ width:100%; text-align:center; margin-top:8px; }

/* Grid */
.atpm-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:24px; margin-top:20px; }

/* Card */
.atpm-card{ background:var(--atpm-bg); border:1px solid var(--atpm-border); border-radius:var(--atpm-radius); overflow:hidden; box-shadow:var(--atpm-shadow); transition:transform .2s ease; position:relative; }
.atpm-card:hover{ transform:translateY(-4px); }
.atpm-card-thumb{ position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--atpm-bg-alt); }
.atpm-card-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.atpm-card-thumb-placeholder{ width:100%; height:100%; background:linear-gradient(135deg,#6d28d922,#f59e0b22); }
.atpm-card-badges{ position:absolute; top:10px; left:10px; display:flex; gap:6px; flex-wrap:wrap; }
.atpm-badge{ font-size:11px; font-weight:700; text-transform:uppercase; padding:4px 9px; border-radius:20px; color:#fff; letter-spacing:.03em; }
.atpm-badge-featured{ background:#6d28d9; }
.atpm-badge-new{ background:#059669; }
.atpm-badge-bestseller{ background:#f59e0b; }
.atpm-wishlist-btn{ position:absolute; top:10px; right:10px; width:36px; height:36px; border-radius:50%; border:none; background:rgba(255,255,255,.85); color:#999; font-size:16px; cursor:pointer; }
.atpm-wishlist-btn.active, .atpm-wishlist-btn:hover{ color:#e11d48; }
.atpm-wishlist-inline{ position:static; width:auto; height:auto; border-radius:10px; padding:10px 16px; margin-top:8px; background:transparent; border:1.5px solid var(--atpm-border); font-weight:600; }
.atpm-card-body{ padding:18px; }
.atpm-card-cats{ font-size:12px; color:var(--atpm-primary); font-weight:600; text-transform:uppercase; margin-bottom:6px; }
.atpm-card-cats a{ color:inherit; text-decoration:none; }
.atpm-card-title{ margin:0 0 8px; font-size:17px; }
.atpm-card-title a{ color:var(--atpm-text); text-decoration:none; }
.atpm-card-rating{ font-size:13px; margin-bottom:12px; }
.atpm-card-footer{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.atpm-price-old{ text-decoration:line-through; color:var(--atpm-text-muted); font-size:13px; margin-right:6px; }
.atpm-price-new{ font-weight:700; font-size:16px; color:var(--atpm-text); }
.atpm-price-large{ font-size:26px; }
.atpm-card-actions{ display:flex; gap:8px; }
.atpm-card-actions .atpm-btn{ padding:8px 14px; font-size:12px; }

/* Hero */
.atpm-hero{ text-align:center; padding:60px 20px 40px; }
.atpm-hero h1{ font-size:clamp(28px,4vw,46px); margin-bottom:14px; }
.atpm-hero p{ color:var(--atpm-text-muted); font-size:17px; max-width:640px; margin:0 auto 30px; }
.atpm-hero-search{ display:flex; max-width:520px; margin:0 auto; gap:8px; }
.atpm-hero-search input{ flex:1; padding:14px 16px; border-radius:10px; border:1.5px solid var(--atpm-border); background:var(--atpm-bg); color:var(--atpm-text); }

.atpm-categories-strip{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin:20px 0 40px; }
.atpm-cat-pill{ padding:8px 18px; border-radius:30px; background:var(--atpm-bg-alt); color:var(--atpm-text); text-decoration:none; font-size:13px; font-weight:600; border:1px solid var(--atpm-border); }
.atpm-cat-pill:hover{ background:var(--atpm-primary); color:#fff; }

.atpm-home-section{ margin:50px 0; }
.atpm-home-section h2{ font-size:24px; margin-bottom:6px; border-left:4px solid var(--atpm-primary); padding-left:12px; }

.atpm-cta{ text-align:center; padding:60px 20px; background:var(--atpm-bg-alt); border-radius:var(--atpm-radius); margin-top:40px; }

/* Toolbar */
.atpm-toolbar{ display:flex; gap:16px; flex-wrap:wrap; align-items:center; justify-content:space-between; margin-bottom:10px; }
.atpm-search-bar input{ padding:12px 16px; border-radius:10px; border:1.5px solid var(--atpm-border); min-width:260px; background:var(--atpm-bg); color:var(--atpm-text); }
.atpm-filters{ display:flex; gap:10px; flex-wrap:wrap; }
.atpm-filters select{ padding:10px 14px; border-radius:10px; border:1.5px solid var(--atpm-border); background:var(--atpm-bg); color:var(--atpm-text); }

/* Breadcrumbs */
.atpm-breadcrumbs{ max-width:1280px; margin:20px auto 0; padding:0 20px; font-size:13px; color:var(--atpm-text-muted); }
.atpm-breadcrumbs a{ color:var(--atpm-primary); text-decoration:none; }

/* Single Theme */
.atpm-single-theme{ max-width:1280px; margin:0 auto; padding:20px; display:grid; grid-template-columns:2fr 1fr; gap:40px; }
.atpm-gallery-main img{ width:100%; border-radius:var(--atpm-radius); }
.atpm-gallery-thumbs{ display:flex; gap:10px; margin-top:10px; overflow-x:auto; }
.atpm-gallery-thumb{ width:80px; height:60px; object-fit:cover; border-radius:8px; cursor:pointer; border:2px solid transparent; }
.atpm-gallery-thumb:hover{ border-color:var(--atpm-primary); }
.atpm-single-title{ font-size:32px; margin:24px 0 8px; }
.atpm-single-rating{ color:var(--atpm-text-muted); margin-bottom:20px; font-size:14px; }
.atpm-tabs{ display:flex; gap:6px; border-bottom:1px solid var(--atpm-border); margin-bottom:20px; }
.atpm-tab-btn{ background:none; border:none; padding:12px 18px; font-weight:600; cursor:pointer; color:var(--atpm-text-muted); border-bottom:2px solid transparent; }
.atpm-tab-btn.active{ color:var(--atpm-primary); border-color:var(--atpm-primary); }
.atpm-feature-list{ list-style:none; padding:0; columns:2; }
.atpm-feature-list li{ margin-bottom:10px; }
.atpm-review{ border-bottom:1px solid var(--atpm-border); padding:14px 0; }
.atpm-review-form{ margin-top:20px; display:flex; flex-direction:column; gap:10px; max-width:480px; }
.atpm-review-form input, .atpm-review-form select, .atpm-review-form textarea{ padding:10px; border-radius:8px; border:1.5px solid var(--atpm-border); background:var(--atpm-bg); color:var(--atpm-text); }

.atpm-buy-box{ background:var(--atpm-bg-alt); border-radius:var(--atpm-radius); padding:24px; position:sticky; top:20px; }
.atpm-buy-price{ margin-bottom:16px; }
.atpm-buy-includes{ list-style:none; padding:0; margin-top:20px; font-size:13px; color:var(--atpm-text-muted); }
.atpm-buy-includes li{ margin-bottom:8px; }

.atpm-related{ max-width:1280px; margin:60px auto; padding:0 20px; }

/* Forms / pages */
.atpm-form{ display:flex; flex-direction:column; gap:12px; max-width:520px; }
.atpm-form input, .atpm-form textarea{ padding:12px; border-radius:10px; border:1.5px solid var(--atpm-border); background:var(--atpm-bg); color:var(--atpm-text); }
.atpm-account-stats{ display:flex; gap:16px; margin:20px 0; flex-wrap:wrap; }
.atpm-stat-box{ background:var(--atpm-bg-alt); border-radius:12px; padding:20px 26px; text-align:center; min-width:140px; }
.atpm-stat-box strong{ font-size:26px; display:block; }
.atpm-account-links{ display:flex; gap:10px; margin-bottom:30px; flex-wrap:wrap; }
.atpm-account-table{ width:100%; border-collapse:collapse; }
.atpm-account-table th, .atpm-account-table td{ padding:12px; border-bottom:1px solid var(--atpm-border); text-align:left; }
.atpm-notice{ padding:14px 18px; border-radius:10px; margin-bottom:20px; }
.atpm-notice-success{ background:#d4f7dc; color:#157347; }
.atpm-download-grid{ display:grid; gap:16px; margin-top:20px; }
.atpm-download-item{ display:flex; gap:16px; align-items:center; background:var(--atpm-bg-alt); padding:16px; border-radius:12px; }
.atpm-download-item img{ width:90px; height:60px; object-fit:cover; border-radius:8px; }
.atpm-cat-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:16px; margin-top:20px; }
.atpm-cat-card{ background:var(--atpm-bg-alt); padding:24px; border-radius:12px; text-decoration:none; color:var(--atpm-text); display:block; }
.atpm-pricing-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px; margin-top:30px; }
.atpm-pricing-card{ border:1.5px solid var(--atpm-border); border-radius:var(--atpm-radius); padding:30px; text-align:center; }
.atpm-pricing-featured{ border-color:var(--atpm-primary); box-shadow:var(--atpm-shadow); }
.atpm-pricing-amount{ font-size:30px; font-weight:700; margin:10px 0 20px; }
.atpm-blog-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:24px; margin-top:20px; }
.atpm-blog-card img{ width:100%; border-radius:10px; margin-bottom:10px; }
.atpm-blog-card a{ text-decoration:none; color:var(--atpm-text); }
.atpm-blog-date{ font-size:12px; color:var(--atpm-text-muted); }

/* Modal */
.atpm-modal{ position:fixed; inset:0; z-index:99999; display:none; align-items:center; justify-content:center; }
.atpm-modal.open{ display:flex; }
.atpm-modal-overlay{ position:absolute; inset:0; background:rgba(0,0,0,.5); }
.atpm-modal-box{ position:relative; background:var(--atpm-bg); color:var(--atpm-text); border-radius:var(--atpm-radius); padding:30px; max-width:420px; width:92%; max-height:90vh; overflow-y:auto; }
.atpm-modal-close{ position:absolute; top:14px; right:16px; background:none; border:none; font-size:22px; cursor:pointer; color:var(--atpm-text-muted); }
.atpm-checkout-summary{ background:var(--atpm-bg-alt); padding:12px 16px; border-radius:10px; margin-bottom:16px; }
#atpm-checkout-form{ display:flex; flex-direction:column; gap:10px; }
#atpm-checkout-form input[type=text], #atpm-checkout-form input[type=email]{ padding:10px; border-radius:8px; border:1.5px solid var(--atpm-border); background:var(--atpm-bg); color:var(--atpm-text); }
.atpm-coupon-row{ display:flex; gap:8px; }
.atpm-payment-methods{ display:flex; flex-direction:column; gap:6px; font-size:14px; }
.atpm-error{ color:#e11d48; font-size:13px; }

@media (max-width:820px){
	.atpm-single-theme{ grid-template-columns:1fr; }
	.atpm-buy-box{ position:static; }
}
