/*==================================================
RESET
==================================================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Poppins',sans-serif;
background:#ffffff;
color:#1f2937;
line-height:1.6;
overflow-x:hidden;
}

img{
display:block;
max-width:100%;
}

a{
text-decoration:none;
color:inherit;
}

button,
input,
textarea,
select{
font-family:'Poppins',sans-serif;
}

ul{
list-style:none;
margin:0;
padding:0;
}

/*==================================================
LAYOUT
==================================================*/

.container{
width:1300px;
max-width:92%;
margin:auto;
}

section{
padding:80px 0;
}

.section-title{
font-size:38px;
font-weight:700;
text-align:center;
margin-bottom:50px;
color:#1f2937;
}

/*==================================================
DETAILS HERO
==================================================*/

.details-hero{
padding:170px 0 90px;
}

.details-grid{
display:grid;
grid-template-columns:280px 1fr;
gap:60px;
align-items:start;
}

/*==================================================
APPLICATION ICON
==================================================*/

.details-icon{
width:260px;
height:260px;
background:#fff;
border:1px solid #e8edf5;
border-radius:28px;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 18px 45px rgba(0,0,0,.08);
}

.details-icon img{
width:180px;
height:180px;
transition:.3s;
}

.details-icon:hover img{
transform:scale(1.05);
}

/*==================================================
APPLICATION INFORMATION
==================================================*/

.details-info h1{
font-size:54px;
font-weight:700;
margin:18px 0;
color:#1f2937;
}

.platform{
display:inline-flex;
align-items:center;
padding:8px 18px;
background:#dff8e8;
color:#0f8d45;
border-radius:30px;
font-size:14px;
font-weight:600;
}

.coming-badge{
display:inline-flex;
align-items:center;
margin-left:12px;
padding:8px 18px;
background:#f59e0b;
color:#fff;
border-radius:30px;
font-size:14px;
font-weight:600;
}

.description{
margin-top:25px;
font-size:17px;
line-height:30px;
color:#6b7280;
}
/*==================================================
APPLICATION META
==================================================*/

.app-meta{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:18px;
margin:35px 0;
}

.app-meta div{
background:#f8faff;
border:1px solid #e6ebf5;
border-radius:18px;
padding:20px;
text-align:center;
transition:.25s;
}

.app-meta div:hover{
transform:translateY(-3px);
box-shadow:0 10px 25px rgba(0,0,0,.06);
}

.app-meta strong{
display:block;
margin-bottom:8px;
font-size:13px;
font-weight:600;
color:#6b7280;
text-transform:uppercase;
letter-spacing:.5px;
}

.app-meta span{
display:block;
font-size:18px;
font-weight:700;
color:#1f2937;
}

/*==================================================
APPLICATION PRICE
==================================================*/

.app-price{
margin:35px 0;
padding:25px;
background:#f8faff;
border:1px solid #e6ebf5;
border-radius:18px;
box-shadow:0 10px 25px rgba(0,0,0,.05);
}

.price-label{
margin-bottom:12px;
font-size:13px;
font-weight:600;
color:#6b7280;
text-transform:uppercase;
letter-spacing:1px;
}

.price-main{
margin-bottom:18px;
font-size:42px;
font-weight:700;
color:#2563eb;
line-height:1;
}

.price-tax,
.price-total{
display:flex;
justify-content:space-between;
align-items:center;
padding:10px 0;
font-size:15px;
}

.price-tax{
border-top:1px solid #e6ebf5;
color:#6b7280;
}

.price-total{
border-top:1px solid #e6ebf5;
font-size:18px;
font-weight:700;
color:#1f2937;
}

/*==================================================
PURCHASE CARD
==================================================*/

.purchase-card{
margin-top:30px;
padding:25px;
background:#ffffff;
border:1px solid #e6ebf5;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
}

/*==================================================
PURCHASE BUTTONS
==================================================*/

.purchase-buttons{
display:flex;
justify-content:center;
margin-bottom:25px;
}

.purchase-buttons .download-btn{
display:flex;
align-items:center;
justify-content:center;
width:100%;
max-width:320px;
height:56px;
padding:0 24px;
border:none;
border-radius:14px;
background:#2563eb;
color:#fff;
font-size:16px;
font-weight:600;
cursor:pointer;
transition:.25s;
text-align:center;
}

.purchase-buttons .download-btn:hover{
background:#1d4ed8;
transform:translateY(-2px);
}
/*==================================================
PAYPAL
==================================================*/

.paypal-section{
margin-top:20px;
padding-top:20px;
border-top:1px solid #e6ebf5;
text-align:center;
}

.paypal-buttons{
width:100%;
max-width:320px;
margin:0 auto;
}

.paypal-cancel{
display:none;
margin-top:15px;
text-align:center;
}

.cancel-paypal{
width:100%;
max-width:320px;
height:56px;
}

.paypal-buttons:empty{
display:none;
}
 

.cancel-paypal:hover{
background:#bb2d3b;
transform:translateY(-2px);
}

/*==================================================
CUSTOMER CARD
==================================================*/

.customer-card{
margin-top:25px;
padding:25px;
background:#ffffff;
border:1px solid #e6ebf5;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
}

/*==================================================
ACTION BUTTONS
==================================================*/

.action-buttons{
display:flex;
gap:15px;
}

.action-buttons .download-btn{
flex:1;
height:56px;
display:flex;
align-items:center;
justify-content:center;
padding:0 20px;
border:none;
border-radius:14px;
font-size:16px;
font-weight:600;
cursor:pointer;
transition:.25s;
text-align:center;
}

/*==================================================
COMMON BUTTON STYLES
==================================================*/

.download-btn{
display:inline-flex;
align-items:center;
justify-content:center;
text-decoration:none;
user-select:none;
}

.support-btn{
background:#28a745;
color:#fff;
}

.support-btn:hover{
background:#218838;
transform:translateY(-2px);
}

.review-btn{
background:#2563eb;
color:#fff;
}

.review-btn:hover:not(:disabled){
background:#1d4ed8;
transform:translateY(-2px);
}

.review-btn:disabled{
background:#cbd5e1;
color:#64748b;
cursor:not-allowed;
}

.coming-soon-btn{
background:#f59e0b;
color:#fff;
cursor:default;
}

.coming-soon-btn:hover{
transform:none;
}
/*==================================================
SCREENSHOTS
==================================================*/

.screenshots{
padding:80px 0;
}

.screenshot-grid{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:25px;
}

.screenshot-card{
width:260px;          /* Change the WIDTH here */
height:510px;         /* Change the HEIGHT here */
background:#fff;
border:1px solid #e6ebf5;
border-radius:18px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,.06);
transition:.25s;
cursor:pointer;
}

.screenshot-card img{
width:100%;
height:100%;
object-fit:cover;
transition:.3s;
}

.screenshot-card:hover{
transform:translateY(-5px);
box-shadow:0 18px 40px rgba(0,0,0,.10);
}
 

.screenshot-card:hover img{
transform:scale(1.04);
}
/*==================================================
FEATURES
==================================================*/

.info-grid{
display:grid;
grid-template-columns:1fr;
gap:25px;
}

.info-card{
background:#fff;
border:1px solid #e6ebf5;
border-radius:20px;
padding:30px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.info-card h2{
margin-bottom:25px;
font-size:28px;
font-weight:700;
color:#1f2937;
}

.feature-list{
margin:0;
padding:0;
list-style:none;
}

.feature-list li{
padding:14px 0;
border-bottom:1px solid #edf2f7;
font-size:16px;
color:#4b5563;
}

.feature-list li:last-child{
border-bottom:none;
}

.requirements-list{
margin:0;
padding:0;
font-size:16px;
line-height:30px;
color:#4b5563;
text-align:left;
}
/*==================================================
GUIDES
==================================================*/

.guides{
padding:80px 0;
}

.guide-list{
display:flex;
flex-direction:column;
gap:18px;
max-width:900px;
margin:35px auto 0;
}

.guide-item{
display:block;
padding:20px 24px;
background:#fff;
border:1px solid #e6ebf5;
border-radius:16px;
font-size:17px;
font-weight:600;
transition:.25s;
box-shadow:0 8px 25px rgba(0,0,0,.05);
}

.guide-item:hover{
background:#f8fbff;
border-color:#2563eb;
color:#2563eb;
transform:translateY(-3px);
}

/*==================================================
LIGHTBOX
==================================================*/

.gallery-image{
cursor:pointer;
}

#lightbox{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
display:none;
align-items:center;
justify-content:center;
padding:30px;
background:rgba(0,0,0,.92);
z-index:9999;
}

#lightbox img{
max-width:90%;
max-height:85%;
border-radius:18px;
box-shadow:0 20px 60px rgba(0,0,0,.45);
}

#closeLightbox,
#previousImage,
#nextImage{
position:absolute;
width:56px;
height:56px;
border:none;
border-radius:50%;
background:rgba(255,255,255,.15);
color:#fff;
font-size:28px;
cursor:pointer;
transition:.25s;
}

#closeLightbox:hover,
#previousImage:hover,
#nextImage:hover{
background:#2563eb;
}

#closeLightbox{
top:25px;
right:25px;
}

#previousImage{
left:25px;
top:50%;
transform:translateY(-50%);
}

#nextImage{
right:25px;
top:50%;
transform:translateY(-50%);
}
/*==================================================
RELEASE NOTES
==================================================*/

.history-section{
padding:80px 0;
}

.history-card{
background:#fff;
border:1px solid #e6ebf5;
border-radius:20px;
padding:30px;
margin-bottom:25px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
transition:.25s;
}

.history-card:hover{
transform:translateY(-4px);
box-shadow:0 18px 40px rgba(0,0,0,.08);
}

.history-header{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
padding-bottom:15px;
border-bottom:1px solid #e6ebf5;
}

.history-header h3{
font-size:24px;
font-weight:700;
color:#2563eb;
margin:0;
}

.history-header span{
font-size:14px;
color:#6b7280;
}

.history-body{
display:flex;
flex-direction:column;
gap:12px;
}

.history-change{
padding:14px 18px;
background:#f8faff;
border-left:4px solid #22c55e;
border-radius:10px;
font-size:15px;
color:#4b5563;
transition:.25s;
}

.history-change:hover{
background:#eef5ff;
transform:translateX(4px);
}

/*==================================================
REVIEWS
==================================================*/

.reviews-section{
padding:80px 0;
}

.review-summary{
display:flex;
align-items:center;
justify-content:space-between;
gap:25px;
padding:25px;
margin-bottom:30px;
background:#f8faff;
border:1px solid #e6ebf5;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.review-score{
font-size:60px;
font-weight:700;
color:#2563eb;
line-height:1;
}

.review-stars{
font-size:28px;
color:#fbbf24;
margin-bottom:8px;
}

.review-count{
font-size:15px;
color:#6b7280;
}

.review-card{
background:#fff;
border:1px solid #e6ebf5;
border-radius:20px;
padding:25px;
margin-bottom:25px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
transition:.25s;
}

.review-card:hover{
transform:translateY(-4px);
box-shadow:0 18px 40px rgba(0,0,0,.08);
}

.review-header{
display:flex;
justify-content:space-between;
align-items:flex-start;
margin-bottom:18px;
padding-bottom:15px;
border-bottom:1px solid #e6ebf5;
}

.review-header strong{
display:block;
font-size:17px;
color:#1f2937;
}

.review-header small{
display:block;
margin-top:5px;
font-size:13px;
color:#6b7280;
}

.review-rating{
font-size:22px;
color:#fbbf24;
}

.review-card h3{
margin-bottom:12px;
font-size:20px;
font-weight:600;
color:#1f2937;
}

.review-card p{
font-size:15px;
line-height:28px;
color:#4b5563;
}

.verified-download{
display:inline-block;
margin-top:18px;
padding:8px 14px;
background:#dcfce7;
color:#166534;
border-radius:30px;
font-size:13px;
font-weight:600;
}

/*==================================================
REVIEW MODAL
==================================================*/

.review-modal{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
display:none;
justify-content:center;
align-items:center;
padding:20px;
background:rgba(0,0,0,.65);
z-index:9999;
}

.review-box{
width:600px;
max-width:100%;
background:#fff;
border-radius:20px;
padding:35px;
position:relative;
box-shadow:0 25px 60px rgba(0,0,0,.25);
}

.review-close{
position:absolute;
top:15px;
right:18px;
border:none;
background:none;
font-size:34px;
color:#6b7280;
cursor:pointer;
transition:.25s;
}

.review-close:hover{
color:#111827;
}

.review-box h2{
margin-bottom:25px;
font-size:28px;
font-weight:700;
}

.review-box label{
display:block;
margin:18px 0 8px;
font-weight:600;
}

.review-box input[type=text],
.review-box textarea{
width:100%;
padding:14px;
border:1px solid #d1d5db;
border-radius:10px;
font-size:15px;
resize:vertical;
}

.review-box textarea{
min-height:140px;
}

.star-rating{
display:flex;
flex-direction:row-reverse;
justify-content:flex-end;
margin-bottom:15px;
}

.star-rating input{
display:none;
}

.star-rating label{
margin-right:6px;
font-size:38px;
color:#d1d5db;
cursor:pointer;
transition:.2s;
}

.star-rating label:hover,
.star-rating label:hover~label,
.star-rating input:checked~label{
color:#fbbf24;
}
/*==================================================
SCROLLBAR
==================================================*/

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-track{
background:#eef2f7;
}

::-webkit-scrollbar-thumb{
background:#2563eb;
border-radius:20px;
}

::-webkit-scrollbar-thumb:hover{
background:#1d4ed8;
}

/*==================================================
RESPONSIVE - LARGE TABLETS
==================================================*/

@media(max-width:1200px){

.details-grid{
grid-template-columns:220px 1fr;
gap:40px;
}

.app-meta{
grid-template-columns:repeat(2,1fr);
}

.screenshot-grid{
grid-template-columns:repeat(2,1fr);
}

}

/*==================================================
RESPONSIVE - TABLETS
==================================================*/

@media(max-width:992px){

.details-hero{
padding:150px 0 80px;
}

.details-grid{
grid-template-columns:1fr;
text-align:center;
}

.details-icon{
margin:0 auto;
}

.description{
max-width:700px;
margin:25px auto 0;
}

.app-meta{
grid-template-columns:repeat(2,1fr);
}

.info-grid{
grid-template-columns:1fr;
}

.purchase-buttons{
justify-content:center;
}

.action-buttons{
flex-direction:column;
}

.action-buttons .download-btn,
.purchase-buttons .download-btn,
.cancel-paypal{
max-width:100%;
}

.review-summary{
flex-direction:column;
text-align:center;
}

.review-header{
flex-direction:column;
gap:12px;
}

.history-header{
flex-direction:column;
align-items:flex-start;
gap:10px;
}
.purchase-buttons{
flex-direction:column;
gap:12px;
align-items:stretch;
}

.purchase-buttons .download-btn{
width:100%;
min-height:56px;
padding:16px 20px;
font-size:16px;
display:flex;
align-items:center;
justify-content:center;
}

.action-buttons{
flex-direction:column;
gap:12px;
}

.action-buttons .download-btn,
.action-buttons .cancel-paypal{
width:100%;
min-height:56px;
padding:16px 20px;
display:flex;
align-items:center;
justify-content:center;
}
.review-modal .download-btn,
#reviewModal .download-btn{
width:100%;
min-height:56px;
padding:16px 20px;
font-size:16px;
display:flex;
align-items:center;
justify-content:center;
}
}

/*==================================================
RESPONSIVE - PHONES
==================================================*/

@media(max-width:768px){

section{
padding:60px 0;
}

.container{
max-width:95%;
}

.details-hero{
padding:130px 0 60px;
}

.details-icon{
width:180px;
height:180px;
}

.details-icon img{
width:120px;
height:120px;
}

.details-info h1{
font-size:34px;
}

.description{
font-size:16px;
line-height:28px;
}

.section-title{
font-size:30px;
}

.app-meta{
grid-template-columns:1fr;
}

.price-main{
font-size:34px;
}

.screenshot-grid{
grid-template-columns:1fr;
}

.review-score{
font-size:48px;
}

.review-stars{
font-size:24px;
}

.review-box{
padding:25px;
}

.review-box h2{
font-size:24px;
}

.star-rating label{
font-size:32px;
}

.guide-item{
padding:16px 18px;
font-size:16px;
}

#closeLightbox,
#previousImage,
#nextImage{
width:48px;
height:48px;
font-size:22px;
}

#lightbox img{
max-width:95%;
max-height:80%;
}

}

/*==================================================
RESPONSIVE - SMALL PHONES
==================================================*/

@media(max-width:480px){

.details-info h1{
font-size:28px;
}

.platform,
.coming-badge{
display:block;
width:fit-content;
margin:0 auto 12px;
}

.app-price,
.purchase-card,
.customer-card,
.info-card,
.review-card,
.history-card{
padding:20px;
}

.download-btn,
.cancel-paypal{
font-size:15px;
}

.price-main{
font-size:30px;
}

.purchase-buttons{
flex-direction:column;
gap:12px;
}

.purchase-buttons .download-btn{
width:100%;
min-height:56px;
padding:16px 20px;
font-size:16px;
display:flex;
align-items:center;
justify-content:center;
}

.action-buttons{
flex-direction:column;
gap:12px;
}

.action-buttons .download-btn{
width:100%;
min-height:56px;
padding:16px 20px;
font-size:16px;
display:flex;
align-items:center;
justify-content:center;
}
.review-modal .download-btn,
#reviewModal .download-btn{
width:100%;
min-height:56px;
padding:16px 20px;
font-size:16px;
display:flex;
align-items:center;
justify-content:center;
}
}




.download-btn.added{
background:#16a34a;
border-color:#16a34a;
color:#fff;
cursor:default;
}

.download-btn.added:hover{
background:#16a34a;
border-color:#16a34a;
transform:none;
box-shadow:none;
}