/*
Theme Name: Fluent Demo
Template: twentytwentyfive
Description: Demo storefront theme for the Fluent plugin shop (local video-demo site).
Version: 1.0.0
Text Domain: kitebyte
*/

/* ---------- base polish ---------- */
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
a { text-underline-offset: 3px; }
::selection { background: #E4DCFF; }

/* ---------- header ---------- */
.kb-header { position: sticky; top: 0; z-index: 50; backdrop-filter: saturate(180%) blur(10px); -webkit-backdrop-filter: saturate(180%) blur(10px); background: rgba(255,255,255,.88) !important; }
.admin-bar .kb-header { top: 32px; }
.kb-logo { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--wp--preset--color--contrast); font-weight: 800; font-size: 22px; letter-spacing: -0.02em; }
.kb-logo svg { width: 34px; height: 34px; flex: none; }
.kb-header .wp-block-navigation a { font-weight: 600; color: #3A4256; }
.kb-header .wp-block-navigation a:hover { color: var(--wp--preset--color--accent-1); text-decoration: none; }
.kb-header .wp-block-navigation .current-menu-item > a { color: var(--wp--preset--color--accent-1); }

/* ---------- buttons ---------- */
.wp-block-button__link { transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link { box-shadow: 0 6px 18px -6px rgba(109,74,255,.55); }
.wp-block-button .wp-block-button__link:hover { transform: translateY(-1px); }
.wp-block-button.is-style-outline .wp-block-button__link { border-width: 1.5px; }

/* ---------- eyebrow pill ---------- */
.kb-pill { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px 6px 6px; border-radius: 999px; background: #fff; border: 1px solid #E4DCFF; font-size: 14px; font-weight: 600; color: #3A4256; box-shadow: 0 2px 10px -4px rgba(16,24,40,.12); }
.kb-pill b { background: var(--wp--preset--color--accent-1); color: #fff; padding: 3px 10px; border-radius: 999px; font-size: 12px; letter-spacing: .02em; }
.kb-pill a { color: inherit; text-decoration: none; }

/* ---------- hero ---------- */
.kb-hero { background: radial-gradient(1200px 500px at 85% -10%, #EDE7FF 0%, rgba(237,231,255,0) 60%), radial-gradient(900px 500px at -10% 110%, #E6F6FE 0%, rgba(230,246,254,0) 60%), #fff; }
.kb-hero h1 { letter-spacing: -0.035em; line-height: 1.04; }
.kb-hero h1 em { font-style: normal; background: linear-gradient(90deg,#6D4AFF,#0EA5E9); -webkit-background-clip: text; background-clip: text; color: transparent; }
.kb-hero-img img { border-radius: 28px; box-shadow: 0 30px 80px -30px rgba(60,40,140,.35); }
.kb-trust { color: #5B6478; font-size: 15px; }
.kb-trust strong { color: var(--wp--preset--color--contrast); }

/* ---------- stats ---------- */
.kb-stat { text-align: center; }
.kb-stat .kb-num { font-size: clamp(32px, 4vw, 44px); font-weight: 800; letter-spacing: -0.03em; color: var(--wp--preset--color--contrast); line-height: 1.1; }
.kb-stat .kb-lbl { color: #5B6478; font-size: 15px; }

/* ---------- feature cards ---------- */
.kb-card { background: #fff; border: 1px solid #E6E8F0; border-radius: 20px; transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease; height: 100%; }
.kb-card:hover { box-shadow: 0 18px 40px -20px rgba(16,24,40,.25); transform: translateY(-2px); border-color: #D9D0FF; }
.kb-icon { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; margin-bottom: 14px; }
.kb-icon svg { width: 24px; height: 24px; }
.kb-eyebrow { text-transform: uppercase; letter-spacing: .12em; font-weight: 700; font-size: 13px; color: var(--wp--preset--color--accent-1); }

/* ---------- CTA band ---------- */
.kb-cta { background: radial-gradient(600px 300px at 90% 0%, rgba(167,139,250,.45), transparent 60%), radial-gradient(500px 300px at 0% 100%, rgba(14,165,233,.35), transparent 60%), #0B1020; border-radius: 28px; overflow: hidden; }
.kb-cta h2, .kb-cta p { color: #fff; }
.kb-cta p { opacity: .8; }

/* ---------- page header ---------- */
.kb-page-head { background: linear-gradient(180deg, #F6F4FF 0%, #fff 100%); border-bottom: 1px solid #EEF0F5; }
.kb-page-head h1 { letter-spacing: -0.03em; }

/* ---------- info list ---------- */
.kb-checks { list-style: none; padding-left: 0; }
.kb-checks li { position: relative; padding-left: 32px; margin-bottom: 12px; }
.kb-checks li::before { content: ""; position: absolute; left: 0; top: 3px; width: 20px; height: 20px; border-radius: 6px; background: #EDE7FF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%236D4AFF' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 10.5l3 3 7-7'/%3E%3C/svg%3E") center/14px no-repeat; }

/* ---------- embedded plugin surfaces ---------- */
.kb-surface { background: #fff; border: 1px solid #E6E8F0; border-radius: 24px; box-shadow: 0 24px 60px -32px rgba(16,24,40,.28); }
.kb-surface .fluentform .ff-btn-submit { background: var(--wp--preset--color--accent-1) !important; border-color: var(--wp--preset--color--accent-1) !important; border-radius: 10px !important; padding: 12px 26px !important; font-weight: 700 !important; }
.kb-surface .fluentform .ff-el-form-control { border-radius: 10px; border-color: #DADFEA; padding: 12px 14px; }
.kb-surface .fluentform .ff-el-form-control:focus { border-color: #6D4AFF; box-shadow: 0 0 0 3px rgba(109,74,255,.15); }

/* ---------- footer ---------- */
.kb-footer a { color: #B9C0D4; text-decoration: none; }
.kb-footer a:hover { color: #fff; }
.kb-footer .kb-logo { color: #fff; }
.kb-footer p { color: #8C94AB; }

/* ---------- shop polish ---------- */
.fct-product-card, .fct_product_card { border-radius: 18px !important; }
.fluent-cart-shop-app img, .fct-product-card img { border-radius: 14px; }

@media (max-width: 781px) {
  .admin-bar .kb-header { top: 46px; }
  .kb-hide-mobile { display: none !important; }
}

/* ---------- FluentCart product cards ---------- */
.fct-product-card { background: #fff; border: 1px solid #E6E8F0 !important; border-radius: 20px !important; padding: 12px 12px 16px !important; transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease; }
.fct-product-card:hover { box-shadow: 0 22px 44px -24px rgba(16,24,40,.3); transform: translateY(-3px); border-color: #D9D0FF !important; }
.fct-product-card-image { border-radius: 14px !important; }
.fct-product-card-title a { font-weight: 800 !important; font-size: 1.05rem !important; color: #0B1020 !important; letter-spacing: -0.01em; text-decoration: none !important; }
.fct-product-card-excerpt { color: #5B6478 !important; font-size: 14px !important; }
.fct-product-card .fct-item-price { font-weight: 800; color: #6D4AFF; }
.fct-product-card .fluent-cart-add-to-cart-button, .fct-product-card .fluent-cart-direct-checkout-button, .fct-product-card a.fct-button, .fct-product-card button { background: #6D4AFF !important; border-color: #6D4AFF !important; color: #fff !important; border-radius: 10px !important; font-weight: 700 !important; transition: background .15s ease; }
.fct-product-card .fluent-cart-add-to-cart-button:hover, .fct-product-card button:hover { background: #5A37F0 !important; }
.kb-home-products .fct-shop-paginator, .kb-home-products .fct-shop-view-switcher { display: none !important; }
.kb-card { box-sizing: border-box; height: auto; }
.fct-product-card a.fct-product-view-button { background: #6D4AFF !important; border-color: #6D4AFF !important; color: #fff !important; border-radius: 10px !important; font-weight: 700 !important; }
/* single product + misc plugin buttons */
.fluent-cart-direct-checkout-button, .fluent-cart-add-to-cart-button, .wp-block-fluent-cart-buy-section { background: #6D4AFF !important; border-color: #6D4AFF !important; color: #fff !important; border-radius: 12px !important; font-weight: 700 !important; }
.fluent-cart-direct-checkout-button:hover, .fluent-cart-add-to-cart-button:hover { background: #5A37F0 !important; }
.fct-product-variants .selected, .fct-product-variants [class*="active"] { border-color: #6D4AFF !important; box-shadow: 0 0 0 3px rgba(109,74,255,.15); }
.kb-surface input[type="submit"], .kb-surface button[type="submit"], .kb-surface .fs_btn_primary, .kb-surface .el-button--primary { background: #6D4AFF !important; border-color: #6D4AFF !important; border-radius: 10px !important; font-weight: 700 !important; }
.kb-surface input[type="text"], .kb-surface input[type="password"], .kb-surface input[type="email"] { border-radius: 10px; border: 1px solid #DADFEA; padding: 10px 12px; }
.kb-pill b { white-space: nowrap; flex: none; }
@media (max-width: 781px) { .kb-header .wp-block-navigation { order: 3; } .kb-hero { padding-top: 48px !important; } }
