/*
Theme Name: Nexa Studio
Theme URI: https://nexastudio.example.com
Author: Nexa Studio Team
Author URI: https://nexastudio.example.com
Description: Nexa Studio is a world-class, AI-ready, multipurpose premium WordPress theme with a full Header/Footer/Mega Menu Builder, built-in Ads Manager, Freemium licensing engine, AI Tools Directory, Landing Page & Blog Builders, WooCommerce & Elementor/Gutenberg compatibility, Dark Mode, and a complete SEO toolkit. Built for speed, flexibility, and commercial use.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nexa-studio
Tags: e-commerce, blog, portfolio, custom-menu, custom-colors, custom-logo, dark-mode, full-width-template, rtl-language-support, translation-ready, threaded-comments, wide-blocks

Nexa Studio WordPress Theme, Copyright 2026 Nexa Studio Team
Nexa Studio is distributed under the terms of the GNU GPL.
*/

/* ==========================================================================
   DESIGN TOKENS
   Palette: Signal Indigo (#4F46E5) / Mint Signal (#17B897) / Ink (#0E1116)
   Type: "Sora" (display, geometric/techy) + "Inter" (body/UI)
   ========================================================================== */

:root{
  /* Brand */
  --nexa-primary: #4F46E5;
  --nexa-primary-dark: #3730A3;
  --nexa-primary-light: #EEF0FF;
  --nexa-accent: #17B897;
  --nexa-accent-dark: #0E8C73;
  --nexa-pro: #FF7A45;

  /* Neutrals */
  --nexa-ink: #0E1116;
  --nexa-body-text: #333A45;
  --nexa-muted: #6B7280;
  --nexa-border: #E6E8EE;
  --nexa-surface: #FFFFFF;
  --nexa-bg: #F7F8FC;

  /* Typography */
  --nexa-font-display: "Sora", -apple-system, BlinkMacSystemFont, sans-serif;
  --nexa-font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;

  /* Layout */
  --nexa-container: 1240px;
  --nexa-radius: 10px;
  --nexa-gap: 24px;
  --nexa-header-height: 76px;

  /* Shadows */
  --nexa-shadow-sm: 0 1px 2px rgba(14,17,22,.06);
  --nexa-shadow-md: 0 8px 24px rgba(14,17,22,.08);
}

html[data-nexa-theme="dark"]{
  --nexa-ink: #F3F4F6;
  --nexa-body-text: #D7DAE0;
  --nexa-muted: #9AA1AC;
  --nexa-border: #232733;
  --nexa-surface: #171A21;
  --nexa-bg: #0E1116;
  --nexa-primary-light: #1B1E33;
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:var(--nexa-font-body);
  color:var(--nexa-body-text);
  background:var(--nexa-bg);
  line-height:1.65;
  font-size:16px;
  transition:background .25s ease,color .25s ease;
}
h1,h2,h3,h4,h5,h6{
  font-family:var(--nexa-font-display);
  color:var(--nexa-ink);
  line-height:1.2;
  margin:0 0 .6em;
  font-weight:700;
}
a{color:var(--nexa-primary);text-decoration:none;}
a:hover{color:var(--nexa-primary-dark);}
img{max-width:100%;height:auto;display:block;}
.nexa-container{max-width:var(--nexa-container);margin:0 auto;padding:0 24px;}
.screen-reader-text{position:absolute!important;left:-9999px;top:-9999px;}
.skip-link{position:absolute;left:-9999px;background:var(--nexa-ink);color:#fff;padding:10px 16px;z-index:99999;}
.skip-link:focus{left:10px;top:10px;}

/* Buttons */
.nexa-btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--nexa-font-display);font-weight:600;font-size:.95rem;
  padding:11px 22px;border-radius:var(--nexa-radius);border:1px solid transparent;
  background:var(--nexa-primary);color:#fff;cursor:pointer;transition:.2s ease;
}
.nexa-btn:hover{background:var(--nexa-primary-dark);color:#fff;}
.nexa-btn.nexa-btn-outline{background:transparent;border-color:var(--nexa-border);color:var(--nexa-ink);}
.nexa-btn.nexa-btn-outline:hover{border-color:var(--nexa-primary);color:var(--nexa-primary);}
.nexa-btn.nexa-btn-accent{background:var(--nexa-accent);}
.nexa-btn.nexa-btn-accent:hover{background:var(--nexa-accent-dark);}

/* PRO badge / lock */
.nexa-pro-badge{
  background:var(--nexa-pro);color:#fff;font-size:11px;font-weight:700;
  padding:2px 7px;border-radius:5px;margin-left:6px;vertical-align:middle;
  font-family:var(--nexa-font-display);letter-spacing:.03em;
}
.nexa-locked{position:relative;opacity:.55;filter:grayscale(.15);pointer-events:none;}
.nexa-upgrade-modal-overlay{
  position:fixed;inset:0;background:rgba(14,17,22,.6);z-index:100000;
  display:none;align-items:center;justify-content:center;
}
.nexa-upgrade-modal-overlay.is-open{display:flex;}
.nexa-upgrade-modal{
  background:var(--nexa-surface);border-radius:14px;max-width:420px;width:92%;
  padding:32px;text-align:center;box-shadow:var(--nexa-shadow-md);
}
.nexa-upgrade-modal h3{margin-bottom:.4em;}
.nexa-upgrade-modal p{color:var(--nexa-muted);margin-bottom:20px;}
.nexa-upgrade-modal .nexa-btn{width:100%;justify-content:center;}
.nexa-upgrade-modal .nexa-modal-close{
  position:absolute;top:12px;right:16px;background:none;border:none;
  font-size:22px;cursor:pointer;color:var(--nexa-muted);
}

/* Skip generic layout primitives kept intentionally minimal here;
   see assets/css/main.css for full component library. */
