:root{
    --iye-blue:#078fc4;
    --iye-blue-dark:#08729b;
    --iye-yellow:#ffb800;
    --iye-red:#ff2b32;
    --iye-ink:#101820;
    --iye-muted:#66727a;
    --iye-line:#e7ecef;
    --iye-soft:#f6f9fb;
}

.iye-catalog{
    max-width:1400px;
    margin:0 auto;
    padding:38px 20px 54px;
    font-family:inherit;
    color:var(--iye-ink);
}

.iye-alert{
    max-width:900px;
    margin:30px auto;
    padding:18px 22px;
    background:#fff7f7;
    border-left:5px solid var(--iye-red);
    border-radius:12px;
    color:#444;
}

.iye-hero{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 9% 12%,rgba(255,184,0,.20),transparent 23%),
        radial-gradient(circle at 91% 84%,rgba(255,43,50,.14),transparent 25%),
        linear-gradient(135deg,#ffffff 0%,#f8fbfd 58%,#eef8fc 100%);
    border:1px solid #e4edf1;
    border-radius:30px;
    padding:34px 26px 30px;
    text-align:center;
    box-shadow:0 18px 45px rgba(10,69,96,.08);
    margin-bottom:22px;
}

.iye-hero-logo{
    width:150px!important;
    max-width:150px!important;
    height:auto!important;
    margin:0 auto 14px!important;
    display:block!important;
}

.iye-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:7px;
    background:var(--iye-blue);
    color:#fff;
    padding:8px 15px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    letter-spacing:.09em;
    margin-bottom:12px;
}

.iye-hero h1{
    max-width:850px;
    margin:0 auto 10px;
    font-size:38px;
    line-height:1.08;
    color:var(--iye-ink);
    font-weight:900;
}

.iye-hero p{
    max-width:760px;
    margin:0 auto 22px;
    color:var(--iye-muted);
    font-size:15px;
    line-height:1.65;
}

.iye-toolbar{
    max-width:850px;
    margin:0 auto;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
}

.iye-search-wrap{
    flex:1;
    min-width:0;
    position:relative;
}

.iye-search-icon{
    position:absolute;
    left:16px;
    top:50%;
    transform:translateY(-50%);
    color:#70828c;
    font-size:20px;
    pointer-events:none;
}

.iye-search{
    width:100%;
    min-height:50px;
    border:1px solid #dce7ec!important;
    border-radius:14px!important;
    padding:12px 16px 12px 43px!important;
    background:#fff!important;
    color:var(--iye-ink)!important;
    font-size:14px!important;
    outline:none!important;
    box-shadow:none!important;
}

.iye-search:focus{
    border-color:var(--iye-blue)!important;
    box-shadow:0 0 0 3px rgba(7,143,196,.10)!important;
}

.iye-generate-btn{
    min-height:50px;
    background:linear-gradient(135deg,var(--iye-blue),var(--iye-blue-dark));
    color:#fff;
    border:0;
    border-radius:14px;
    padding:13px 20px;
    font-weight:900;
    font-size:14px;
    cursor:pointer;
    white-space:nowrap;
    box-shadow:0 12px 24px rgba(7,143,196,.20);
    transition:transform .2s ease,box-shadow .2s ease;
}

.iye-generate-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 30px rgba(7,143,196,.28);
}

.iye-category-nav{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:8px;
    padding:16px;
    margin:0 0 38px;
    background:#fff;
    border:1px solid var(--iye-line);
    border-radius:20px;
    box-shadow:0 9px 28px rgba(18,55,72,.05);
}

.iye-category-nav a{
    display:inline-block;
    text-decoration:none!important;
    color:#16485e!important;
    background:#f2f8fb;
    border:1px solid #dcebf1;
    border-radius:999px;
    padding:8px 13px;
    font-size:12px;
    font-weight:800;
    transition:all .2s ease;
}

.iye-category-nav a:hover{
    background:var(--iye-blue);
    border-color:var(--iye-blue);
    color:#fff!important;
    transform:translateY(-1px);
}

.iye-category{
    margin-bottom:48px;
    scroll-margin-top:25px;
}

.iye-category-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:16px;
    margin-bottom:18px;
    padding:0 0 10px;
    border-bottom:3px solid var(--iye-yellow);
}

.iye-category-label{
    display:block;
    color:var(--iye-red);
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.10em;
    margin-bottom:4px;
}

.iye-category-header h2{
    margin:0;
    color:var(--iye-blue-dark);
    font-size:24px;
    line-height:1.2;
    font-weight:900;
}

.iye-count{
    background:#edf7fb;
    color:#25677f;
    border-radius:999px;
    padding:7px 12px;
    font-size:11px;
    font-weight:800;
    white-space:nowrap;
}

.iye-products-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    gap:15px;
}

.iye-product-card{
    background:#fff;
    border:1px solid #e8eef1;
    border-radius:18px;
    padding:12px;
    text-align:center;
    box-shadow:0 7px 18px rgba(13,50,68,.055);
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.iye-product-card:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 30px rgba(13,50,68,.11);
    border-color:rgba(7,143,196,.32);
}

.iye-product-link{
    color:inherit!important;
    text-decoration:none!important;
    display:block;
}

.iye-product-image{
    height:155px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:9px;
    background:linear-gradient(180deg,#fff,#fbfcfd);
    border-radius:13px;
}

.iye-product-image img,
.iye-web-img{
    max-width:138px!important;
    max-height:138px!important;
    width:auto!important;
    height:auto!important;
    object-fit:contain!important;
    display:block!important;
}

.iye-product-card h3{
    margin:0;
    color:#17232b;
    font-size:13px;
    line-height:1.35;
    font-weight:800;
}


.iye-price{
    margin-top:7px;
    font-size:14px;
    line-height:1.3;
    color:var(--iye-blue-dark);
    font-weight:900;
}

.iye-price .woocommerce-Price-amount{
    font-weight:900;
}

.iye-price del{
    color:#8a969c;
    font-weight:600;
    margin-right:4px;
    opacity:.85;
}

.iye-price ins{
    color:var(--iye-red);
    text-decoration:none;
}

.iye-sku{
    margin-top:5px;
    font-size:11px;
    color:#75848b;
    font-weight:700;
    line-height:1.2;
}

.iye-no-image{
    width:78px;
    height:78px;
    border-radius:14px;
    background:#f1f4f5;
    color:#98a1a6;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
}

.iye-no-results{
    max-width:700px;
    margin:0 auto 35px;
    text-align:center;
    background:#fff8e5;
    border:1px solid #ffe288;
    color:#785b00;
    padding:14px 18px;
    border-radius:14px;
    font-weight:700;
}

.iye-modal{
    position:fixed;
    inset:0;
    background:rgba(7,18,24,.64);
    z-index:999999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.iye-modal.iye-active{display:flex}

.iye-modal-box{
    max-width:440px;
    width:100%;
    background:#fff;
    border-radius:25px;
    padding:34px;
    text-align:center;
    box-shadow:0 28px 80px rgba(0,0,0,.28);
}

.iye-spinner{
    width:56px;
    height:56px;
    border:6px solid #eaf1f4;
    border-top-color:var(--iye-blue);
    border-right-color:var(--iye-yellow);
    border-radius:50%;
    margin:0 auto 18px;
    animation:iyeSpin .9s linear infinite;
}

@keyframes iyeSpin{to{transform:rotate(360deg)}}

.iye-modal-box h2{
    margin:0 0 8px;
    color:var(--iye-blue-dark);
    font-size:23px;
    font-weight:900;
}

.iye-modal-box p{margin:0 0 18px;color:#65747c}

.iye-progress{
    height:9px;
    border-radius:999px;
    background:#eaf0f3;
    overflow:hidden;
}

.iye-progress-bar{
    height:100%;
    width:20%;
    background:linear-gradient(90deg,var(--iye-blue),var(--iye-yellow),var(--iye-red));
    border-radius:999px;
    animation:iyeProgress 2.1s ease-in-out infinite;
}

@keyframes iyeProgress{0%{width:18%}50%{width:72%}100%{width:100%}}

@media(max-width:760px){
    .iye-catalog{padding:28px 14px 45px}
    .iye-hero{padding:30px 17px 24px;border-radius:23px}
    .iye-hero-logo{width:125px!important;max-width:125px!important}
    .iye-hero h1{font-size:29px}
    .iye-toolbar{flex-direction:column}
    .iye-search-wrap,.iye-generate-btn{width:100%}
    .iye-category-nav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:12px}
    .iye-category-nav a{white-space:nowrap}
    .iye-category-header{align-items:flex-start;flex-direction:column;gap:9px}
    .iye-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
    .iye-product-card{border-radius:15px;padding:10px}
    .iye-product-image{height:120px}
    .iye-product-image img,.iye-web-img{max-width:112px!important;max-height:112px!important}
    .iye-product-card h3{font-size:11px}
    .iye-price{font-size:13px}
}

