/* SOFTWARE theme — clean navy + teal palette, modern SaaS look.
   Variables are referenced from components.css and public.css, so just
   swapping this file changes the entire site's color scheme.
*/

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;700&display=swap');

:root {
    /* Backgrounds — dark navy, slightly bluer than the gaming theme */
    --bg-0: #0a0f1e;
    --bg-1: #111729;
    --bg-2: #18213a;
    --bg-3: #202a47;

    --surface:        #161e35;
    --surface-2:      #1b2440;
    --surface-hover:  #21294a;

    --border:         rgba(255, 255, 255, 0.06);
    --border-strong:  rgba(255, 255, 255, 0.12);

    --text:       #eef2ff;
    --text-soft:  #c4cce0;
    --text-dim:   #8993b3;
    --text-muted: #5e6789;

    /* Primary accent — cyan / teal, common in dev-tool / SaaS branding */
    --accent:       #14b8a6;
    --accent-hot:   #06d6c4;
    --accent-soft:  rgba(20, 184, 166, 0.16);

    /* Secondary accent — indigo (replaces gaming's violet) */
    --violet:       #6366f1;
    --violet-hot:   #818cf8;
    --violet-soft:  rgba(99, 102, 241, 0.16);

    /* Status colours kept consistent across themes */
    --success: #22c55e;
    --warning: #f59e0b;
    --danger:  #ef4444;
    --info:    #38bdf8;

    --shadow-card:        0 4px 24px rgba(0, 0, 0, 0.35);
    --shadow-glow-orange: 0 0 32px rgba(20, 184, 166, 0.30); /* repurposed: teal glow */
    --shadow-glow-violet: 0 0 32px rgba(99, 102, 241, 0.30);

    --r-sm: 6px;
    --r-md: 10px;
    --r-lg: 14px;
    --r-xl: 22px;

    --container: 1240px;
    --header-h: 78px;

    /* Software theme uses Space Grotesk for headings — geometric, modern */
    --font-display: 'Space Grotesk', 'Inter', system-ui, sans-serif;
    --font-body:    'Inter', system-ui, sans-serif;
    --font-mono:    'JetBrains Mono', 'Consolas', monospace;
}

html, body {
    background: var(--bg-0);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 15px;
    overflow-x: hidden;
}

body {
    background-image:
        radial-gradient(ellipse 90% 50% at 70% 0%, rgba(99, 102, 241, 0.16), transparent 60%),
        radial-gradient(ellipse 60% 40% at 10% 30%, rgba(20, 184, 166, 0.10), transparent 60%),
        linear-gradient(180deg, var(--bg-0) 0%, var(--bg-1) 100%);
    background-attachment: fixed;
}

h1, h2, h3, h4, h5 {
    font-family: var(--font-display);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.02em;
}
h1 { font-size: clamp(34px, 5vw, 60px); }
h2 { font-size: clamp(26px, 3vw, 40px); }
h3 { font-size: clamp(20px, 2vw, 26px); }
h4 { font-size: 18px; }

p { color: var(--text-soft); }

a { color: var(--text); transition: color .15s; }
a:hover { color: var(--accent); }

::selection { background: var(--accent); color: var(--bg-0); }

.container {
    width: 100%;
    max-width: var(--container);
    margin: 0 auto;
    padding: 0 24px;
}

.muted        { color: var(--text-dim); }
.text-accent  { color: var(--accent); }
.text-violet  { color: var(--violet); }
.uppercase    { text-transform: uppercase; letter-spacing: 0.08em; }
.mono         { font-family: var(--font-mono); }
