/* =========================================================
   DAUERSTRAMM NORD CUP — Club-Look
   Angelehnt an das Design von dauerstramm-nord.de
   ========================================================= */

:root {
    --bg:        #07080b;
    --bg-2:      #0d0f15;
    --surface:   #12141c;
    --surface-2: #1a1d28;
    --line:      #232634;
    --ink:       #f3f4f7;
    --ink-dim:   #a4a8b6;
    --ink-mute:  #5b6072;
    --navy:      #1a2752;
    --navy-2:    #2a3a78;
    --navy-soft: #3b54a8;
    --blue-hi:   #6c8cff;
    --warn:      #d97757;
    --win:       #4ade80;
    --loss:      #ef5e5e;
}

body {
    background-image:
        radial-gradient(ellipse at top, rgba(26, 39, 82, 0.18), transparent 60%),
        radial-gradient(ellipse at bottom right, rgba(108, 140, 255, 0.05), transparent 50%);
    background-attachment: fixed;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    position: relative;
}

/* grunge noise overlay */
body::before {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 1;
    opacity: 0.05;
    mix-blend-mode: overlay;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
}

body > nav, body > main, body #toast-container {
    position: relative;
    z-index: 2;
}

/* =========================================================
   TYPOGRAPHY
   ========================================================= */
h1, h2, h3, h4 {
    font-family: 'Anton', 'Oswald', sans-serif;
    font-weight: 400;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

.mono {
    font-family: 'JetBrains Mono', monospace;
    font-feature-settings: "tnum";
}

/* =========================================================
   NAVIGATION
   ========================================================= */
nav.sticky {
    background: rgba(7, 8, 11, 0.85) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.nav-brand-logo {
    height: 42px;
    width: auto;
    display: block;
    filter: drop-shadow(0 0 16px rgba(108, 140, 255, 0.25));
}

.nav-brand-meta {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
    padding-left: 12px;
    border-left: 1px solid var(--line);
}

.nav-brand-meta strong {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--ink);
    font-weight: 600;
}

.nav-brand-meta span {
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ink-mute);
    margin-top: 4px;
}

nav a, nav button {
    font-family: 'Barlow Condensed', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 600 !important;
}

/* =========================================================
   BUTTONS / INTERACTIVE
   ========================================================= */
button, .btn, a.inline-flex, button.inline-flex, a.flex, button.flex {
    font-family: 'Barlow Condensed', sans-serif;
}

nav a.flex, nav button.flex, .p-6 form button[type="submit"] {
    transition: transform .12s ease, box-shadow .15s ease, background-color .15s ease, border-color .15s ease;
}

nav a.flex:hover, nav button.flex:hover {
    transform: translate(-1px, -1px);
    box-shadow: 3px 3px 0 rgba(108, 140, 255, 0.35);
}

/* =========================================================
   STATUS / PILLS
   ========================================================= */
.pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: 'Barlow Condensed', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 11px;
    padding: 3px 9px;
    border: 1px solid var(--line);
    color: var(--ink-dim);
}
.pill.live { color: var(--ink); border-color: var(--blue-hi); background: rgba(108, 140, 255, 0.1); }
.pill.live::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--blue-hi);
    animation: brand-pulse 1.4s infinite;
}
@keyframes brand-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.7); }
}

::selection { background: var(--blue-hi); color: var(--bg); }
