/* ==========================================================
   AI PROMPT GENERATOR
   Version : 2.0
   Author  : Sumit Knowledge Foundation
   File    : style.css
========================================================== */

/* ==========================================================
   GOOGLE FONT
========================================================== */

@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap");

/* ==========================================================
   CSS VARIABLES
========================================================== */

:root {

    --primary: #2563eb;
    --primary-dark: #1d4ed8;

    --secondary: #06b6d4;

    --success: #16a34a;

    --warning: #f59e0b;

    --danger: #ef4444;

    --dark: #111827;

    --dark-light: #1f2937;

    --light: #ffffff;

    --gray-100: #f8fafc;

    --gray-200: #e5e7eb;

    --gray-300: #d1d5db;

    --gray-500: #6b7280;

    --gray-700: #374151;

    --radius: 14px;

    --shadow:

        0 10px 30px rgba(0,0,0,.08);

    --transition:

        all .30s ease;

}

/* ==========================================================
   RESET
========================================================== */

*{

    margin:0;

    padding:0;

    box-sizing:border-box;

}

/* ==========================================================
   HTML
========================================================== */

html{

    scroll-behavior:smooth;

}

/* ==========================================================
   BODY
========================================================== */

body{

    font-family:"Poppins",sans-serif;

    background:var(--gray-100);

    color:var(--dark);

    line-height:1.7;

    overflow-x:hidden;

}

/* ==========================================================
   IMAGES
========================================================== */

img{

    max-width:100%;

    display:block;

}

/* ==========================================================
   LINKS
========================================================== */

a{

    text-decoration:none;

    color:inherit;

    transition:var(--transition);

}

/* ==========================================================
   LIST
========================================================== */

ul{

    list-style:none;

}

/* ==========================================================
   CONTAINER
========================================================== */

.container{

    width:min(1200px,92%);

    margin:auto;

}

/* ==========================================================
   SECTION
========================================================== */

section{

    padding:90px 0;

}

/* ==========================================================
   SECTION TITLE
========================================================== */

.section-title{

    text-align:center;

    margin-bottom:60px;

}

.section-title h2{

    font-size:2.3rem;

    margin-bottom:15px;

    color:var(--dark);

}

.section-title p{

    max-width:700px;

    margin:auto;

    color:var(--gray-500);

}

/* ==========================================================
   BUTTONS
========================================================== */

.primary-btn{

    display:inline-block;

    padding:14px 30px;

    background:var(--primary);

    color:#fff;

    border-radius:var(--radius);

    font-weight:600;

    transition:var(--transition);

}

.primary-btn:hover{

    background:var(--primary-dark);

    transform:translateY(-3px);

}

.secondary-btn{

    display:inline-block;

    padding:14px 30px;

    border:2px solid var(--primary);

    color:var(--primary);

    border-radius:var(--radius);

    font-weight:600;

    margin-left:12px;

}

.secondary-btn:hover{

    background:var(--primary);

    color:#fff;

}

/* ==========================================================
   SKIP LINK
========================================================== */

.skip-link{

    position:absolute;

    left:-9999px;

}

.skip-link:focus{

    left:20px;

    top:20px;

    background:#000;

    color:#fff;

    padding:12px 18px;

    z-index:99999;

}

/* ==========================================================
   HEADER
========================================================== */

.header{

    position:sticky;

    top:0;

    z-index:999;

    background:#fff;

    box-shadow:var(--shadow);

}

.header .container{

    display:flex;

    justify-content:space-between;

    align-items:center;

    min-height:80px;

}

.logo{

    font-size:1.5rem;

    font-weight:700;

    color:var(--primary);

}

.navbar ul{

    display:flex;

    gap:35px;

}

.navbar a{

    font-weight:500;

}

.navbar a:hover{

    color:var(--primary);

}

.menu-btn{

    display:none;

    font-size:28px;

    background:none;

    border:none;

    cursor:pointer;

}

/* ==========================================================
   HERO
========================================================== */

.hero{

    background:

    linear-gradient(

    135deg,

    #2563eb,

    #06b6d4);

    color:#fff;

}

.hero-grid{

    display:grid;

    grid-template-columns:

    repeat(2,1fr);

    gap:60px;

    align-items:center;

}

.badge{

    display:inline-block;

    padding:8px 16px;

    background:rgba(255,255,255,.15);

    border-radius:50px;

    margin-bottom:20px;

    font-size:.9rem;

}

.hero h1{

    font-size:3.3rem;

    line-height:1.2;

    margin-bottom:25px;

}

.hero p{

    font-size:1.1rem;

    margin-bottom:35px;

    opacity:.95;

}

.hero-buttons{

    display:flex;

    flex-wrap:wrap;

    gap:15px;

}

.hero-image img{

    width:100%;

    animation:float 5s ease-in-out infinite;

}

/* ==========================================================
   FLOAT ANIMATION
========================================================== */

@keyframes float{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-15px);

    }

    100%{

        transform:translateY(0);

    }

}
/* ==========================================================
   HERO STATISTICS
========================================================== */

.stats{

    background:#ffffff;

    padding:40px 0;

}

.stats-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.stat-card{

    background:#fff;

    padding:30px 20px;

    border-radius:var(--radius);

    text-align:center;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.stat-card:hover{

    transform:translateY(-8px);

}

.stat-card h2{

    color:var(--primary);

    font-size:2rem;

    margin-bottom:10px;

}

.stat-card p{

    color:var(--gray-500);

    font-weight:500;

}

/* ==========================================================
   GENERATOR SECTION
========================================================== */

.generator{

    background:var(--gray-100);

}

.generator-wrapper{

    display:grid;

    grid-template-columns:420px 1fr;

    gap:35px;

    align-items:start;

}

/* ==========================================================
   FORM PANEL
========================================================== */

.generator-form{

    background:#fff;

    padding:30px;

    border-radius:var(--radius);

    box-shadow:var(--shadow);

    position:sticky;

    top:100px;

}

.form-group{

    margin-bottom:22px;

}

.form-group label{

    display:block;

    margin-bottom:8px;

    font-weight:600;

    color:var(--dark);

}

/* ==========================================================
   INPUTS
========================================================== */

.form-group input,

.form-group select{

    width:100%;

    height:52px;

    padding:0 16px;

    border:1px solid var(--gray-300);

    border-radius:12px;

    outline:none;

    background:#fff;

    font-size:15px;

    transition:var(--transition);

}

.form-group input:focus,

.form-group select:focus{

    border-color:var(--primary);

    box-shadow:0 0 0 3px rgba(37,99,235,.15);

}

/* ==========================================================
   CHARACTER COUNTER
========================================================== */

.counter{

    display:flex;

    justify-content:flex-end;

    margin-top:-8px;

    margin-bottom:20px;

    font-size:.9rem;

    color:var(--gray-500);

}

/* ==========================================================
   BUTTON GROUP
========================================================== */

.button-group{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:15px;

}

.button-group button{

    height:50px;

    border:none;

    border-radius:12px;

    cursor:pointer;

    font-size:15px;

    font-weight:600;

    transition:var(--transition);

}

/* Generate */

#generateBtn{

    background:var(--primary);

    color:#fff;

}

#generateBtn:hover{

    background:var(--primary-dark);

}

/* Copy */

#copyBtn{

    background:var(--success);

    color:#fff;

}

#copyBtn:hover{

    opacity:.9;

}

/* Random */

#randomBtn{

    background:var(--warning);

    color:#fff;

}

#randomBtn:hover{

    opacity:.9;

}

/* Clear */

#clearBtn{

    background:var(--danger);

    color:#fff;

}

#clearBtn:hover{

    opacity:.9;

}

.button-group button:hover{

    transform:translateY(-3px);

}

/* ==========================================================
   OUTPUT PANEL
========================================================== */

.generator-output{

    background:#fff;

    padding:30px;

    border-radius:var(--radius);

    box-shadow:var(--shadow);

}

.generator-output label{

    display:block;

    margin-bottom:15px;

    font-size:1.1rem;

    font-weight:600;

}

/* ==========================================================
   OUTPUT TEXTAREA
========================================================== */

#result{

    width:100%;

    min-height:520px;

    resize:vertical;

    border:1px solid var(--gray-300);

    border-radius:12px;

    padding:20px;

    outline:none;

    font-family:"Poppins",sans-serif;

    font-size:15px;

    line-height:1.8;

    background:#fafafa;

    transition:var(--transition);

}

#result:focus{

    border-color:var(--primary);

}

/* ==========================================================
   OUTPUT INFO
========================================================== */

.output-info{

    margin-top:15px;

    padding:15px;

    border-left:4px solid var(--primary);

    background:#f1f5f9;

    border-radius:8px;

}

.output-info small{

    color:var(--gray-700);

    line-height:1.6;

}
/* ==========================================================
   POPULAR CATEGORIES
========================================================== */

.categories{

    background:#ffffff;

}

.category-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));

    gap:20px;

}

.category-card{

    background:#ffffff;

    padding:22px 18px;

    border:1px solid var(--gray-200);

    border-radius:var(--radius);

    text-align:center;

    font-weight:600;

    transition:var(--transition);

    box-shadow:0 5px 15px rgba(0,0,0,.05);

}

.category-card:hover{

    background:var(--primary);

    color:#ffffff;

    transform:translateY(-6px);

    border-color:var(--primary);

}

/* ==========================================================
   AI MODELS
========================================================== */

.ai-models{

    background:var(--gray-100);

}

.model-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));

    gap:20px;

}

.model-card{

    background:#ffffff;

    padding:24px;

    text-align:center;

    border-radius:var(--radius);

    font-weight:600;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.model-card:hover{

    color:#ffffff;

    background:linear-gradient(135deg,#2563eb,#06b6d4);

    transform:translateY(-8px);

}

/* ==========================================================
   PROMPT EXAMPLES
========================================================== */

.prompt-examples{

    background:#ffffff;

}

.example-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));

    gap:30px;

}

.example-card{

    background:#ffffff;

    border-radius:var(--radius);

    padding:30px;

    box-shadow:var(--shadow);

    transition:var(--transition);

    border-top:5px solid var(--primary);

}

.example-card:hover{

    transform:translateY(-8px);

}

.example-card h3{

    margin-bottom:15px;

    color:var(--primary);

}

.example-card p{

    color:var(--gray-700);

    line-height:1.8;

}

/* ==========================================================
   USE CASES
========================================================== */

.use-cases{

    background:var(--gray-100);

}

.use-case-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:25px;

}

.use-card{

    background:#ffffff;

    padding:30px;

    border-radius:var(--radius);

    text-align:center;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.use-card:hover{

    transform:translateY(-8px);

}

.use-card h3{

    color:var(--primary);

    margin-bottom:15px;

}

.use-card p{

    color:var(--gray-600);

    line-height:1.7;

}

/* ==========================================================
   RELATED RESOURCES
========================================================== */

.related-resources{

    background:#ffffff;

}

.resource-links{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:18px;

}

.resource-links a{

    display:block;

    padding:18px 20px;

    background:#f8fafc;

    border:1px solid var(--gray-200);

    border-radius:12px;

    font-weight:600;

    transition:var(--transition);

}

.resource-links a:hover{

    background:var(--primary);

    color:#ffffff;

    border-color:var(--primary);

}

/* ==========================================================
   HOVER ANIMATION
========================================================== */

.feature-card,
.category-card,
.model-card,
.example-card,
.use-card{

    will-change:transform;

}
/* ==========================================================
   FAQ
========================================================== */

.faq{

    background:var(--gray-100);

}

.faq details{

    background:#ffffff;

    margin-bottom:18px;

    border-radius:var(--radius);

    box-shadow:var(--shadow);

    overflow:hidden;

}

.faq summary{

    padding:20px 24px;

    cursor:pointer;

    font-weight:600;

    list-style:none;

}

.faq summary::-webkit-details-marker{

    display:none;

}

.faq details p{

    padding:0 24px 24px;

    color:var(--gray-700);

    line-height:1.8;

}

/* ==========================================================
   CTA
========================================================== */

.cta{

    background:linear-gradient(135deg,#2563eb,#06b6d4);

    color:#ffffff;

    text-align:center;

}

.cta h2{

    font-size:2.5rem;

    margin-bottom:20px;

}

.cta p{

    max-width:700px;

    margin:0 auto 35px;

}

.cta .primary-btn{

    background:#ffffff;

    color:var(--primary);

}

.cta .primary-btn:hover{

    background:#f8fafc;

}

/* ==========================================================
   FOOTER
========================================================== */

.footer{

    background:#111827;

    color:#d1d5db;

    padding:70px 0 20px;

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr;

    gap:40px;

    margin-bottom:40px;

}

.footer h3{

    color:#ffffff;

    margin-bottom:18px;

}

.footer p{

    line-height:1.8;

}

.footer ul{

    display:flex;

    flex-direction:column;

    gap:12px;

}

.footer a:hover{

    color:#ffffff;

}

.copyright{

    text-align:center;

    padding-top:20px;

    border-top:1px solid rgba(255,255,255,.10);

    font-size:.95rem;

}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width:991px){

.hero-grid,

.generator-wrapper,

.footer-grid{

grid-template-columns:1fr;

}

.stats-grid{

grid-template-columns:repeat(2,1fr);

}

.generator-form{

position:static;

}

.navbar{

display:none;

}

.menu-btn{

display:block;

}

.hero{

text-align:center;

}

.hero-buttons{

justify-content:center;

}

.hero h1{

font-size:2.6rem;

}

}

@media (max-width:768px){

section{

padding:70px 0;

}

.section-title h2{

font-size:2rem;

}

.button-group{

grid-template-columns:1fr;

}

#result{

min-height:420px;

}

}

@media (max-width:576px){

.stats-grid{

grid-template-columns:1fr;

}

.hero h1{

font-size:2rem;

}

.hero p{

font-size:1rem;

}

.primary-btn,

.secondary-btn{

width:100%;

text-align:center;

margin:0;

}

.hero-buttons{

flex-direction:column;

}

.form-group input,

.form-group select{

font-size:16px;

}

}

/* ==========================================================
   CUSTOM SCROLLBAR
========================================================== */

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:#e5e7eb;

}

::-webkit-scrollbar-thumb{

background:var(--primary);

border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

background:var(--primary-dark);

}

/* ==========================================================
   SELECTION
========================================================== */

::selection{

background:var(--primary);

color:#ffffff;

}

/* ==========================================================
   UTILITIES
========================================================== */

.text-center{

text-align:center;

}

.mt-30{

margin-top:30px;

}

.mb-30{

margin-bottom:30px;

}

.hidden{

display:none;

}

