Jump to content
🚛
Streamline your cross-border operation. From ACE & ACI eManifests to PARS tracking and U.S. In-Bond filing, BorderConnect is the fastest way to cross.

MediaWiki:Common.css: Difference between revisions

From BorderConnect Wiki
No edit summary
Tag: Reverted
Undo revision 3246 by Admin (talk)
Tag: Undo
Line 1,734: Line 1,734:


/* ============================================================
/* ============================================================
   --- TABLE OF CONTENTS (TOC) - EXCLUSION FIX ---
   --- TABLE OF CONTENTS (TOC) - VARIABLE SYSTEM ---
   1. Shared Layout (Applies to both)
   1. Define the palettes (Light vs Dark)
   2. Light Mode (Only applies if NOT Night)
   2. Apply variables to the elements
  3. Dark Mode (Only applies if Night)
   ============================================================ */
   ============================================================ */


/* ------------------------------------------------------------
/* 1. DEFAULT PALETTE (Light Mode) */
  1. SHARED LAYOUT (Structure Only - No Colors)
:root {
  ------------------------------------------------------------ */
    --toc-bg: #ffffff;
html body .mw-parser-output #toc,
    --toc-border: #e1e8eb;
html body .mw-parser-output .toc,
    --toc-shadow: rgba(0,0,0,0.05);
html body .vector-toc {
    --toc-title-color: #266065;
     /* RESET */
    --toc-title-border: #eef5f6;
    --toc-text: #546e7a;
    --toc-hover-bg: #e0f2f1;
    --toc-hover-text: #266065;
    --toc-line: #e1e8eb;
    --toc-number: #b0bec5;
}
 
/* 2. DARK MODE PALETTE (OS Preference + Night Class) */
/* Applies if OS is Dark AND User hasn't forced Light */
@media (prefers-color-scheme: dark) {
    :root:not(.skin-theme-clientpref-light) {
        --toc-bg: #1e1e1e;
        --toc-border: #333333;
        --toc-shadow: rgba(0,0,0,0.5);
        --toc-title-color: #4db6ac;
        --toc-title-border: #333333;
        --toc-text: #e0e0e0;
        --toc-hover-bg: #263238;
        --toc-hover-text: #80cbc4;
        --toc-line: #424242;
        --toc-number: #757575;
    }
}
 
/* Applies if User explicitly clicks Dark Mode button */
html.skin-theme-clientpref-night {
    --toc-bg: #1e1e1e;
    --toc-border: #333333;
    --toc-shadow: rgba(0,0,0,0.5);
    --toc-title-color: #4db6ac;
    --toc-title-border: #333333;
    --toc-text: #e0e0e0;
    --toc-hover-bg: #263238;
    --toc-hover-text: #80cbc4;
    --toc-line: #424242;
    --toc-number: #757575;
}
 
/* 3. FORCE LIGHT PALETTE (User explicitly clicks Light Mode) */
html.skin-theme-clientpref-light {
    --toc-bg: #ffffff;
    --toc-border: #e1e8eb;
    --toc-shadow: rgba(0,0,0,0.05);
    --toc-title-color: #266065;
    --toc-title-border: #eef5f6;
    --toc-text: #546e7a;
    --toc-hover-bg: #e0f2f1;
    --toc-hover-text: #266065;
    --toc-line: #e1e8eb;
    --toc-number: #b0bec5;
}
 
 
/* ============================================================
  --- COMPONENT STYLING (Uses Variables) ---
  No need to edit below this line for colors!
  ============================================================ */
 
/* Main Container */
.mw-parser-output #toc,
.mw-parser-output .toc,
.vector-toc {
     background-color: var(--toc-bg) !important;
    border: 1px solid var(--toc-border) !important;
    border-radius: 12px !important;
    padding: 12px 15px !important;
    box-shadow: 0 4px 15px var(--toc-shadow) !important;
     display: inline-block !important;
     display: inline-block !important;
     box-sizing: border-box !important;
     box-sizing: border-box !important;
Line 1,752: Line 1,818:
     min-width: 200px !important;
     min-width: 200px !important;
     max-width: 350px !important;
     max-width: 350px !important;
   
    /* SHAPE */
    border-radius: 12px !important;
    padding: 12px 15px !important;
     margin-bottom: 25px !important;
     margin-bottom: 25px !important;
   
    /* FONT */
     font-family: 'Segoe UI', Roboto, sans-serif !important;
     font-family: 'Segoe UI', Roboto, sans-serif !important;
   
    /* ANIMATION */
     transition: background-color 0.3s ease, border-color 0.3s ease !important;
     transition: background-color 0.3s ease, border-color 0.3s ease !important;
}
}


/* Shared Title Font */
/* Title Header */
html body .mw-parser-output #toctitle h2,
.mw-parser-output #toctitle h2,
html body .vector-toc-title {
.vector-toc-title {
     font-family: 'Segoe UI', Roboto, sans-serif !important;
     font-family: 'Segoe UI', Roboto, sans-serif !important;
     font-weight: 800 !important;
     font-weight: 800 !important;
    color: var(--toc-title-color) !important;
    font-size: 0.95rem !important;
     text-transform: uppercase !important;
     text-transform: uppercase !important;
     letter-spacing: 0.5px !important;
     letter-spacing: 0.5px !important;
     margin-bottom: 8px !important;
     margin-bottom: 8px !important;
     padding-bottom: 8px !important;
     padding-bottom: 8px !important;
     border-bottom-width: 2px !important;
     border-bottom: 2px solid var(--toc-title-border) !important;
    border-bottom-style: solid !important;
     width: 100% !important;
     width: 100% !important;
}
}


/* Shared Links */
/* Links (Base) */
html body .mw-parser-output #toc a,
.mw-parser-output #toc a,
html body .vector-toc-link {
.vector-toc-link {
     text-decoration: none !important;
     text-decoration: none !important;
    color: var(--toc-text) !important;
    background: transparent !important;
     display: block !important;
     display: block !important;
     padding: 5px 8px !important;
     padding: 5px 8px !important;
     border-radius: 4px !important;
     border-radius: 4px !important;
     font-weight: 500 !important;
     font-weight: 500 !important;
    background: transparent !important;
     transition: all 0.2s ease !important;
     transition: all 0.2s ease !important;
}
}


html body .mw-parser-output #toc ul ul,
/* Links (Hover) */
html body .vector-toc-list .vector-toc-list {
.mw-parser-output #toc a:hover,
     margin-left: 0 !important;
.vector-toc-link:hover {
     padding-left: 10px !important;
     background-color: var(--toc-hover-bg) !important;
    border-left-width: 2px !important;
     color: var(--toc-hover-text) !important;
     border-left-style: solid !important;
     text-decoration: none !important;
}
}


 
/* List Structure */
/* ------------------------------------------------------------
.mw-parser-output #toc ul, .vector-toc-list {
  2. LIGHT MODE (Applies ONLY when Dark Mode is OFF)
     list-style: none !important; margin: 0 !important; padding: 0 !important;
  We use :not(.night) to ensure these rules vanish in dark mode.
  ------------------------------------------------------------ */
html:not(.skin-theme-clientpref-night) body .mw-parser-output #toc,
html:not(.skin-theme-clientpref-night) .vector-toc {
     background-color: #ffffff !important;
    border: 1px solid #e1e8eb !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important;
}
}
 
.mw-parser-output #toc li, .vector-toc-list-item {
html:not(.skin-theme-clientpref-night) body .mw-parser-output #toctitle h2,
     margin: 0 !important; padding: 0 !important; font-size: 0.9rem !important;
html:not(.skin-theme-clientpref-night) .vector-toc-title {
     line-height: 1.2 !important; white-space: normal !important; word-wrap: break-word !important;
     color: #266065 !important;
     border-bottom-color: #eef5f6 !important;
}
}


html:not(.skin-theme-clientpref-night) body .mw-parser-output #toc a,
/* Indentation Lines */
html:not(.skin-theme-clientpref-night) .vector-toc-link {
.mw-parser-output #toc ul ul, .vector-toc-list .vector-toc-list {
     color: #546e7a !important;
     margin-left: 0 !important;
    padding-left: 10px !important;
    border-left: 2px solid var(--toc-line) !important;
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}
}


html:not(.skin-theme-clientpref-night) body .mw-parser-output #toc a:hover,
/* Numbers & Toggles */
html:not(.skin-theme-clientpref-night) .vector-toc-link:hover {
.tocnumber { color: var(--toc-number) !important; font-size: 0.85em !important; margin-right: 5px !important; }
    background-color: #e0f2f1 !important;
.toctogglelabel { font-size: 0.75rem !important; color: var(--toc-text) !important; opacity: 0.7; }
    color: #266065 !important;
}
 
html:not(.skin-theme-clientpref-night) body .mw-parser-output #toc ul ul,
html:not(.skin-theme-clientpref-night) .vector-toc-list .vector-toc-list {
    border-left-color: #e1e8eb !important;
}
 
html:not(.skin-theme-clientpref-night) body .tocnumber {
    color: #b0bec5 !important;
}
 
 
/* ------------------------------------------------------------
  3. DARK MODE (Applies ONLY when Dark Mode is ON)
  ------------------------------------------------------------ */
 
/* Case A: User Clicked "Dark Mode" Button */
html.skin-theme-clientpref-night body .mw-parser-output #toc,
html.skin-theme-clientpref-night .vector-toc {
    background-color: #1e1e1e !important;
    border: 1px solid #333333 !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.5) !important;
}
 
html.skin-theme-clientpref-night body .mw-parser-output #toctitle h2,
html.skin-theme-clientpref-night .vector-toc-title {
    color: #4db6ac !important;
    border-bottom-color: #333333 !important;
}
 
html.skin-theme-clientpref-night body .mw-parser-output #toc a,
html.skin-theme-clientpref-night .vector-toc-link {
    color: #e0e0e0 !important;
}
 
html.skin-theme-clientpref-night body .mw-parser-output #toc a:hover,
html.skin-theme-clientpref-night .vector-toc-link:hover {
    background-color: #263238 !important;
    color: #80cbc4 !important;
}
 
html.skin-theme-clientpref-night body .mw-parser-output #toc ul ul,
html.skin-theme-clientpref-night .vector-toc-list .vector-toc-list {
    border-left-color: #424242 !important;
}
 
html.skin-theme-clientpref-night body .tocnumber {
    color: #757575 !important;
}
 
 
/* Case B: User has OS set to Dark (and hasn't forced Light) */
@media (prefers-color-scheme: dark) {
    html:not(.skin-theme-clientpref-light) body .mw-parser-output #toc,
    html:not(.skin-theme-clientpref-light) .vector-toc {
        background-color: #1e1e1e !important;
        border: 1px solid #333333 !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.5) !important;
    }
 
    html:not(.skin-theme-clientpref-light) body .mw-parser-output #toctitle h2,
    html:not(.skin-theme-clientpref-light) .vector-toc-title {
        color: #4db6ac !important;
        border-bottom-color: #333333 !important;
    }
 
    html:not(.skin-theme-clientpref-light) body .mw-parser-output #toc a,
    html:not(.skin-theme-clientpref-light) .vector-toc-link {
        color: #e0e0e0 !important;
    }
 
    html:not(.skin-theme-clientpref-light) body .mw-parser-output #toc a:hover,
    html:not(.skin-theme-clientpref-light) .vector-toc-link:hover {
        background-color: #263238 !important;
        color: #80cbc4 !important;
    }
 
    html:not(.skin-theme-clientpref-light) body .mw-parser-output #toc ul ul,
    html:not(.skin-theme-clientpref-light) .vector-toc-list .vector-toc-list {
        border-left-color: #424242 !important;
    }
   
    html:not(.skin-theme-clientpref-light) body .tocnumber {
        color: #757575 !important;
    }
}

Revision as of 18:00, 10 February 2026

/* --- BORDERCONNECT MODERN WIKI THEME (TEAL BRANDING) --- */

:root {
    --bc-blue: #266065;        /* BRAND COLOR: Teal */
    --bc-blue-dark: #163a3d;   /* DARKER SHADE: Deep Green/Slate */
    --bc-accent: #eef5f6;      /* Light background */
    
    /* ... keep your other variables the same ... */
    --bc-text: #2c3e50;
    --bc-text-muted: #546e7a;
    --bc-bg-page: #f4f7f9;
    --bc-radius: 8px;
    --bc-shadow: 0 4px 12px rgba(0,0,0,0.08);
    --bc-shadow-hover: 0 10px 20px rgba(0,0,0,0.12);
}

/* Global Wrapper - Creates the "Surface" for cards to sit on */
.bc-wrap {
    max-width: 1240px;
    margin: 0 auto;
    font-family: 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
    color: var(--bc-text);
    line-height: 1.6;
    background-color: var(--bc-bg-page); /* The light gray background you asked for */
    padding: 30px;
    border-radius: var(--bc-radius);
}

/* --- HERO SECTION --- */
.bc-hero {
    /* The Gradient: Starts with Brand Color, flows to Dark Slate */
    background: linear-gradient(120deg, var(--bc-blue) 0%, var(--bc-blue-dark) 100%);
    
    color: white;
    padding: 60px 30px;
    text-align: center;
    border-radius: var(--bc-radius);
    margin-bottom: 40px;
    
    /* Deep shadow + bottom border for 3D effect */
    box-shadow: 0 10px 25px rgba(38, 96, 101, 0.25); 
    border-bottom: 6px solid rgba(0,0,0,0.15);
}

.bc-hero h1 {
    font-size: 2.5rem;
    font-weight: 700;
    margin: 0 0 10px 0;
    color: white;
    border: none;
    text-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.bc-hero p {
    font-size: 1.25rem;
    opacity: 0.95;
    margin-bottom: 30px;
    font-weight: 400;
}

/* Meta Data (Article & Image Counts) */
.bc-hero .bc-meta {
    font-size: 0.95rem;
    opacity: 0.9;
    margin-top: 25px;
    color: #e0f2f1; /* Soft light teal for normal text */
}

/* MAKE LINKS VISIBLE */
.bc-hero .bc-meta a {
    color: #ffffff !important; /* Pure white */
    font-weight: 700;          /* Bold */
    text-decoration: underline;
    text-underline-offset: 3px; /* Cleaner spacing for underline */
}

.bc-hero .bc-meta a:hover {
    text-decoration: none;
    opacity: 0.8;
}

/* --- HERO PILLS (Popular Articles) --- */
.bc-hero-pills {
    display: flex;
    flex-wrap: wrap;
    /* Increased gap for better vertical and horizontal spacing */
    gap: 16px; 
    justify-content: center;
    max-width: 950px;
    margin: 35px auto 0 auto; /* More space above the pill section */
    line-height: 1.8; /* Prevents vertical crushing */
}

.bc-hero-pill {
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3); /* Slightly brighter border */
    color: white !important;
    padding: 8px 20px; /* Slightly larger padding for a cleaner look */
    border-radius: 50px; /* Fully rounded pill shape */
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.2s ease;
    backdrop-filter: blur(4px);
    white-space: nowrap; /* Prevents text inside pills from wrapping weirdly */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.bc-hero-pill:hover {
    background: white;
    color: #266065 !important;
    transform: translateY(-3px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.2);
    border-color: white;
}

/* Hide accidental breaks in pill container */
.bc-hero-pills br {
    display: none !important;
}

/* --- SEARCH BOX & BUTTON STYLING --- */

.bc-search-container {
    max-width: 650px;
    margin: 0 auto 10px auto;
    display: flex;        /* Aligns input and button side-by-side */
    gap: 10px;           /* Space between input and button */
    justify-content: center;
    align-items: center; /* Ensures vertical alignment */
}

/* The Search Input Field */
.bc-search-container input.mw-ui-input {
    padding: 16px 24px;
    border-radius: 50px;
    border: 2px solid rgba(255,255,255,0.2);
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
    font-size: 1.1rem;
    width: 100%;
    flex: 1; /* Takes up remaining space */
}

/* The Search Button - FORCE OVERRIDE */
/* Targets every possible MediaWiki button variation */
.bc-search-container .mw-ui-button, 
.bc-search-container .mw-ui-progressive,
.bc-search-container input[type="submit"],
.bc-search-container button {
    background-color: #266065 !important; /* BRAND COLOR */
    color: white !important;
    border: none !important;
    border-radius: 50px !important;        /* Matches the round input */
    padding: 0 30px !important;            /* Wider click area */
    font-weight: 700 !important;
    font-size: 1rem !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2) !important;
    text-shadow: none !important;
    height: auto !important;              /* Fixes rigid heights */
    min-height: 54px !important;          /* Matches input height */
}

/* Search Button Hover State */
.bc-search-container .mw-ui-button:hover,
.bc-search-container .mw-ui-progressive:hover,
.bc-search-container input[type="submit"]:hover,
.bc-search-container button:hover {
    background-color: #163a3d !important; /* Darker Brand Color */
    transform: translateY(-2px);          /* Slight lift effect */
    box-shadow: 0 6px 15px rgba(0,0,0,0.3) !important;
}

/* --- GRID SYSTEM --- */
.bc-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
    margin-bottom: 30px;
}

/* --- 2-COLUMN LAYOUT --- */
.bc-2col {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 30px;
    
    /* NEW: This stops the cards from stretching to match height */
    align-items: flex-start; 
}

/* Columns share space equally */
.bc-2col > .bc-card {
    flex: 1;
    min-width: 300px; 
}

/* ... keep your video extension fixes below ... */

/* Mobile: Stack them properly on phones */
@media (max-width: 768px) {
    .bc-2col {
        grid-template-columns: 1fr !important;
    }
}

/* --- CARDS --- */
.bc-card {
    background: white;
    border: none; 
    border-top: 5px solid var(--bc-blue);
    border-radius: var(--bc-radius);
    padding: 30px;
    height: 100%;
    box-sizing: border-box;
    box-shadow: var(--bc-shadow);
    /* No transition needed since we removed the hover effect */
}

/* REMOVED: .bc-card:hover block so main cards stay static */

.bc-card h2 {
    margin-top: 0;
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--bc-blue);
    border-bottom: 2px solid var(--bc-accent);
    padding-bottom: 12px;
    margin-bottom: 20px;
}
.bc-subtle {
    color: var(--bc-text-muted);
    font-size: 1rem;
    margin-bottom: 20px;
    line-height: 1.5;
}

/* --- BUTTONS / PILLS (New User & Common Tasks) --- */
.bc-btngrid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.bc-btn {
    display: flex !important;
    align-items: center !important;
    gap: 15px;                    /* Slightly tighter gap */
    text-align: left;
    
    /* 1. Reduced Padding (Compact Look) */
    padding: 12px 20px !important;  
    
    /* 2. Subtle Background & Border */
    background-color: #fdfdfd;      /* Almost white */
    border: 1px solid #e1e8eb;      /* Soft grey-blue border */
    border-radius: 6px;             /* Rounded corners */
    
    /* 3. Spacing between cards */
    margin-bottom: 10px;            /* Adds a gap between each step */
    transition: all 0.2s ease;      /* Smooth hover animation */
}

/* Hover Effect: Card darkens slightly and border turns Teal */
.bc-btn:hover {
    background-color: #f4f9fa;      /* Light Brand Teal tint */
    border-color: #b0c4c6;          /* Stronger border color */
    transform: translateY(-1px);    /* Subtle lift */
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.bc-btn-icon {
    font-size: 28px;        /* Slightly smaller to match compact card */
    color: #266065;
    line-height: 1;
    width: 32px;
    text-align: center;
    flex-shrink: 0;
}

.bc-btn-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.bc-btn:hover {
    /* Subtle darken on hover - No jarring color flip */
    background: #e0eeef; 
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.08);
    color: #0f2e32; /* Slightly darker text on hover */
    border-left-color: #163a3d;
}

.bc-btn strong {
    display: block;
    color: #266065; /* Brand color for the header text */
    font-size: 0.85rem;
    margin-bottom: 3px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 1;
}

.bc-btn span {
    font-size: 1.05rem;
    color: #2c3e50; /* Dark Slate for the main link text */
}

/* --- ALERTS & CALLOUTS --- */
/* "Did You Know" boxes */
.bc-did-you-know {
    background: #fff8e1;
    border-left: 5px solid #ffc107;
    padding: 20px;
    margin-top: 25px;
    border-radius: 4px;
    font-size: 0.95rem;
    box-shadow: inset 0 0 10px rgba(0,0,0,0.02);
}

.bc-did-you-know h3 {
    margin-top: 0;
    color: #b78a02;
    font-size: 0.9rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 8px;
}

/* Clean Lists */
.bc-cleanlist ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.bc-cleanlist li {
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: 1.05rem;
}

.bc-cleanlist li:last-child {
    border-bottom: none;
}

/* Links inside lists */
.bc-cleanlist a {
    color: var(--bc-blue);
    font-weight: 500;
    text-decoration: none;
}
.bc-cleanlist a:hover {
    text-decoration: underline;
    color: var(--bc-blue-dark);
}

/* --- LINK GRID (FOOTER) --- */
.bc-linkgrid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
}

.bc-linktile a {
    display: flex;
    align-items: center;
    padding: 20px;
    background: #ffffff;
    border: 1px solid #eee;
    border-radius: var(--bc-radius);
    text-decoration: none;
    color: var(--bc-text);
    transition: all 0.2s;
    box-shadow: 0 2px 4px rgba(0,0,0,0.03);
}

.bc-linktile a:hover {
    background: white;
    border-color: var(--bc-blue);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.bc-linkicon {
    font-size: 28px;
    margin-right: 15px;
}

.bc-linktext {
    display: flex;
    flex-direction: column;
}

.bc-linktitle {
    font-weight: 700;
    color: var(--bc-blue);
    font-size: 1.1rem;
}

.bc-linkdesc {
    font-size: 0.85rem;
    color: var(--bc-text-muted);
    margin-top: 4px;
}

/* --- VECTOR SKIN OVERRIDES (Logo/Header fixes) --- */
.mw-logo-wordmark,
.mw-logo-tagline {
     display: none !important;
}
 
.mw-logo a,
.mw-logo a * {
    pointer-events: none !important;
    cursor: default !important;
}
 
.vector-header {
    background: #fff;
     box-sizing: border-box !important;
}
 
.vector-header-container {
    max-width: var(--width-layout) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    padding-left: var(--padding-inline-page-container, 16px) !important;
    padding-right: var(--padding-inline-page-container, 16px) !important;
     box-sizing: border-box !important;
}
 
.mw-header {
    height: 90px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
}
 
.mw-header,
.vector-header,
.vector-header-container {
    min-height: unset !important;
}

.vector-header-start {
    margin-left: 0 !important;
    padding-left: 0 !important;
}
 
#mw-panel-button,
.vector-main-menu-dropdown {
    margin-left: 0 !important;
}
 
.mw-logo {
     display: flex;
     align-items: center;
     height: 100%;
}

.mw-logo img,
#p-logo img {
     height: 135px !important;
    width: auto;
    max-height: none;
}

/* UPDATED: Force hide empty paragraphs, breaks, and MW empty elements */
.mw-parser-output > p:empty,
.mw-parser-output > p > br:only-child,
.mw-parser-output > p.mw-empty-elt {
     display: none !important;
     margin-bottom: 0 !important;
     height: 0 !important;
}

/* UPDATED: Changed :first-child to :first-of-type */
/* This forces the Hero to pull to the top even if an invisible <p> is sitting above it */
.mw-parser-output > .bc-hero:first-of-type {
    margin-top: 0 !important;
}

/* ============================================================
   --- INFOBOX STYLING (Wikipedia Style + Teal Brand) ---
   ============================================================ */

/* 1. Base Infobox Container */
.infobox {
    border: 1px solid #a2a9b1;
    background-color: #f8f9fa;
    color: #202122;
    margin: 0.5em 0 0.5em 1em;
    padding: 0.4em;
    float: right;
    clear: right;
    font-size: 90%;
    line-height: 1.5em;
    width: 24em; /* Standard width */
    border-radius: 4px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

/* 2. Captions (The Title "BorderConnect Inc.") */
.infobox caption {
    font-size: 1.3em;
    font-weight: bold;
    padding: 0.5em;
    text-align: center;
    color: #266065; /* Your Brand Teal */
}

/* 3. Table Cells */
.infobox th,
.infobox td {
    vertical-align: top;
    text-align: left;
    padding: 0.5em;
    border-bottom: 1px solid #eaecf0; /* Subtle separator lines */
}

/* Remove bottom border from last row */
.infobox tr:last-child th,
.infobox tr:last-child td {
    border-bottom: none;
}

/* 4. Headers (Left Column: "Type", "Industry", etc.) */
.infobox th {
    background-color: #eef6f7; /* Your Light Brand Tint */
    color: #1b4d52;           /* Dark Teal Text */
    font-weight: bold;
    width: 35%;               /* Consistent width */
    border-radius: 4px 0 0 4px; /* Rounded left corners */
}

/* 5. Images */
.infobox img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    display: block;
    margin: 0 auto;
}

/* ============================================================
   --- DARK MODE "HARD OVERRIDE" --- 
   This forces dark colors directly onto the elements.
   ============================================================ */

/* 1. FORCE VARIABLES (Just in case) */
html.skin-theme-clientpref-night {
    --bc-blue: #4db6ac !important;
    --bc-text: #e0e0e0 !important;
}

/* 2. MAIN PAGE BACKGROUND */
html.skin-theme-clientpref-night .bc-wrap {
    background-color: #121212 !important; /* Pure Black Background */
    color: #e0e0e0 !important;
    border-color: #333 !important;
}

/* 3. CARD BACKGROUNDS */
html.skin-theme-clientpref-night .bc-card {
    background-color: #1e1e1e !important; /* Dark Gray */
    border: 1px solid #333 !important;
    border-top: 5px solid #4db6ac !important; /* Bright Teal Top */
    box-shadow: 0 4px 15px rgba(0,0,0,0.5) !important;
    color: #e0e0e0 !important;
}

/* 4. HEADERS INSIDE CARDS */
html.skin-theme-clientpref-night .bc-card h2 {
    color: #4db6ac !important; /* Bright Teal */
    border-bottom-color: #444 !important;
}

/* 5. BUTTONS (New User & Common Tasks) */
html.skin-theme-clientpref-night .bc-btn {
    background-color: #263238 !important; /* Dark Blue-Gray */
    border: 1px solid #37474f !important;
    color: #e0f2f1 !important; /* Light Text */
}

html.skin-theme-clientpref-night .bc-btn:hover {
    background-color: #37474f !important;
    border-left-color: #4db6ac !important;
    transform: translateY(-2px);
}

html.skin-theme-clientpref-night .bc-btn strong {
    color: #4db6ac !important; /* Teal Header Text */
}

html.skin-theme-clientpref-night .bc-btn span {
    color: #b0bec5 !important; /* Muted Description Text */
}

/* 6. HERO SECTION UPDATES (Darker & Deeper) */
html.skin-theme-clientpref-night .bc-hero {
    /* Deep "Midnight" Gradient: Very Dark Slate -> Deep Teal */
    background: linear-gradient(135deg, #0a181a 0%, #163a3d 100%) !important;
    
    /* Strong Black Glow instead of light shadow */
    box-shadow: 0 10px 30px rgba(0,0,0,0.8) !important; 
    border-bottom: 6px solid rgba(0,0,0,0.5) !important;
}

html.skin-theme-clientpref-night .bc-hero h1,
html.skin-theme-clientpref-night .bc-hero p {
    color: #e0f2f1 !important;
    text-shadow: 0 2px 4px rgba(0,0,0,0.8) !important; /* Stronger text shadow */
}

/* Fix the Search Input background */
html.skin-theme-clientpref-night .bc-search-container input.mw-ui-input {
    background-color: #2c2c2c !important;
    color: white !important;
    border-color: #444 !important;
}

/* Fix the Pills (Glass effect lighter for dark mode) */
html.skin-theme-clientpref-night .bc-hero-pill {
    background: rgba(255,255,255,0.1) !important;
    border-color: rgba(255,255,255,0.2) !important;
    color: #e0f2f1 !important;
}

html.skin-theme-clientpref-night .bc-hero-pill:hover {
    background: #4db6ac !important;
    color: #121212 !important; /* Black text on Teal button */
}

/* 7. FOOTER LINKS */
html.skin-theme-clientpref-night .bc-linktile a {
    background-color: #1e1e1e !important;
    border-color: #333 !important;
    color: #e0e0e0 !important;
}

html.skin-theme-clientpref-night .bc-linktile a:hover {
    background-color: #2d2d2d !important;
    border-color: #4db6ac !important;
}

html.skin-theme-clientpref-night .bc-linktitle {
    color: #4db6ac !important;
}

html.skin-theme-clientpref-night .bc-linkdesc {
    color: #90a4ae !important;
}

/* 8. LIST ITEMS */
html.skin-theme-clientpref-night .bc-cleanlist li {
    border-bottom-color: #333 !important;
}

html.skin-theme-clientpref-night .bc-cleanlist a {
    color: #80cbc4 !important; /* Lighter Teal for links */
}

/* 9. PRO TIPS / DID YOU KNOW (Fixed Yellow -> Dark) */
html.skin-theme-clientpref-night .bc-did-you-know {
    background-color: #1f1b14 !important; /* Very Dark Brown/Grey */
    border-left: 5px solid #ffb300 !important; /* Keep Gold accent */
    border: 1px solid #3e2723 !important;
    color: #cfd8dc !important; /* Light Grey Text */
    box-shadow: none !important;
}

html.skin-theme-clientpref-night .bc-did-you-know h3 {
    color: #ffca28 !important; /* Bright Gold Header */
    text-shadow: none !important;
}

html.skin-theme-clientpref-night .infobox {
    background-color: #1e1e1e !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.5) !important;
}

html.skin-theme-clientpref-night .infobox caption {
    color: #4db6ac !important; /* Bright Teal Title */
}

html.skin-theme-clientpref-night .infobox th {
    background-color: #263238 !important; /* Dark Slate Header Bg */
    color: #80cbc4 !important;           /* Light Teal Header Text */
    border-bottom-color: #444 !important;
}

html.skin-theme-clientpref-night .infobox td {
    color: #cfd8dc !important;
    border-bottom-color: #444 !important;
}

/* ============================================================
   --- SEARCH SUGGESTIONS DROPDOWN STYLING ---
   Styles the "preview box" that appears when typing.
   ============================================================ */

/* 1. Base Dropdown Style (Light Mode) */
.suggestions {
    background-color: white !important;
    border: 1px solid #dcdcdc !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2) !important;
    border-radius: 0 0 20px 20px !important; /* Matches round search bar */
    overflow: hidden !important;
    z-index: 9999 !important; /* Ensure it sits on top of everything */
    margin-top: 5px !important; /* Small gap below the bar */
    
    /* REMOVED: left: auto / width: auto so JS can align it correctly */
    min-width: 400px !important; /* Prevents it from being too skinny */
}

.suggestions-results {
    border: none !important;
    padding: 0 !important;
}

.suggestions-result {
    color: #2c3e50 !important;
    padding: 12px 20px !important;
    font-size: 15px !important;
    cursor: pointer;
    line-height: 1.4;
}

/* Hover State (When user mouses over a suggestion) */
.suggestions-result-current, 
.suggestions-result:hover {
    background-color: #eef6f7 !important; /* Light Teal Tint */
    color: #266065 !important;           /* Brand Teal Text */
    font-weight: 600 !important;
}

/* The "containing..." text at the bottom */
.suggestions-special {
    background-color: #f8f9fa !important;
    border-top: 1px solid #eee !important;
    padding: 10px 20px !important;
    color: #005696 !important;
    font-size: 0.9em !important;
}

.suggestions-special:hover {
    background-color: #eef6f7 !important;
}

/* 2. DARK MODE OVERRIDES */
html.skin-theme-clientpref-night .suggestions {
    background-color: #2c2c2c !important; /* Dark Grey Bg */
    border: 1px solid #444 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.8) !important;
}

html.skin-theme-clientpref-night .suggestions-result {
    color: #e0e0e0 !important;
}

/* Dark Mode Hover */
html.skin-theme-clientpref-night .suggestions-result-current,
html.skin-theme-clientpref-night .suggestions-result:hover {
    background-color: #266065 !important; /* Brand Teal Highlight */
    color: white !important;
}

html.skin-theme-clientpref-night .suggestions-special {
    background-color: #1e1e1e !important;
    border-top: 1px solid #333 !important;
    color: #4db6ac !important; /* Bright Teal Text */
}

html.skin-theme-clientpref-night .suggestions-special:hover {
    background-color: #37474f !important;
}

/* 3. HIGHLIGHT MATCHED TEXT */
/* This targets the bold text that matches what you typed */
.suggestions-result .special-query {
    font-weight: bold !important;
    color: #000 !important;
}

html.skin-theme-clientpref-night .suggestions-result .special-query {
    color: #fff !important;
    text-shadow: 0 0 10px rgba(255,255,255,0.2);
}

/* ============================================================
   --- MOBILE OPTIMIZATIONS (FULL WIDTH & TRANSPARENT BG) ---
   Fixes layout for phones & tablets (max-width: 768px)
   ============================================================ */
@media screen and (max-width: 768px) {

    /* 1. Global Wrapper: Full Bleed + Transparent Background */
    .bc-wrap {
        padding: 0 !important;        
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        border-radius: 0 !important;
        margin: 0 !important;
        border: none !important;
        
        /* REMOVE BACKGROUND & SHADOW ON MOBILE */
        background: transparent !important; 
        box-shadow: none !important;
    }

    /* 2. Fix the Grids (Stack vertically) */
    .bc-grid, 
    .bc-2col, 
    .bc-btngrid,
    .bc-linkgrid {
        display: flex !important;
        flex-direction: column !important;
        gap: 15px !important;        
    }

    /* 3. Hero Section: Full width & Compact */
    .bc-hero {
        padding: 40px 15px !important;
        text-align: center !important;
        border-radius: 0 !important; 
        margin-bottom: 20px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .bc-hero h1 {
        font-size: 1.8rem !important;
        line-height: 1.2 !important;
    }
    
    .bc-hero p {
        font-size: 1rem !important;
        margin-bottom: 20px !important;
    }

    /* 4. Search Bar Fixes */
    .bc-search-container {
        width: 100% !important;
        padding: 0 10px !important; 
        box-sizing: border-box !important;
    }

    #heroSearchInput {
        padding: 12px 90px 12px 20px !important; 
        font-size: 14px !important;
        width: 100% !important;
    }

    .bc-search-container button {
        padding: 0 15px !important;
        font-size: 0.85rem !important;
        right: 14px !important; 
        top: 4px !important;
        bottom: 4px !important;
        min-height: unset !important;
    }

    /* 5. Suggestions Dropdown */
    .suggestions {
        min-width: unset !important;
        width: 95% !important;      
        left: 2.5% !important;      
        right: auto !important;
    }

    /* 6. Cards: Full Bleed Style */
    .bc-card {
        padding: 25px 20px !important;
        border-radius: 0 !important; 
        border-left: none !important;
        border-right: none !important;
        /* Add a faint border to separate cards since wrapper bg is gone */
        border-bottom: 1px solid rgba(0,0,0,0.05) !important; 
        box-shadow: none !important; 
        margin-bottom: 0 !important;
    }
    
    /* Remove bottom border from the very last card to look clean */
    .bc-card:last-child {
        border-bottom: none !important;
    }

    /* 7. Pills (Tighten spacing) */
    .bc-hero-pills {
        gap: 8px !important;
        padding: 0 10px !important;
    }
    
    .bc-hero-pill {
        font-size: 0.85rem !important;
        padding: 6px 14px !important;
    }
    
    /* 8. Fix Video Embeds */
    .embedvideo, 
    .mw-parser-output iframe, 
    .mw-parser-output object,
    .mw-parser-output .center {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }
    
    .embedvideo .thumbinner,
    .mw-parser-output .thumbinner {
        width: 100% !important;
    }
    
    /* 9. PROMO BOX (Mobile Stack Fix - Compact Version) */
    .bc-promo {
        flex-direction: column !important;
        text-align: center !important;
        padding: 15px !important;     /* Reduced from 30px */
        gap: 12px !important;         /* Reduced from 20px */
        align-items: center !important;
        margin: 15px 0 !important;    /* Reduce vertical margin outside box too */
        
        /* NEW: Remove the thick left border by resetting to a uniform thin border */
        border: 1px solid #dae8ea !important;
    }

    .bc-promo-icon {
        margin-right: 0 !important;
        font-size: 32px !important;   /* Reduced from 40px */
        margin-bottom: 0 !important;  /* Let gap handle spacing */
    }

    .bc-promo-text {
        margin-right: 0 !important;
        margin-bottom: 0 !important;  /* Let gap handle spacing */
        font-size: 0.95rem !important; /* Slightly smaller text */
        line-height: 1.4 !important;
    }

    .bc-promo-cta {
        width: 100% !important;
        margin-top: 5px !important;   /* Slight separation for button */
    }

    .bc-promo-cta a {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
        text-align: center !important;
        padding: 10px !important;     /* Reduced from 15px */
        font-size: 0.9rem !important; /* Match compact sizing */
    }
}

/* --- REMOVE EXTERNAL LINK ICONS FROM FOOTER --- */
.bc-linktile a.external {
    background-image: none !important;
    padding-right: 20px !important; /* Restores balanced padding (matches your padding: 20px) */
}

/* Remove external link icon inside the button */
.bc-promo-cta a.external {
    background-image: none !important;
    padding-right: 20px !important; /* Keep padding symmetric */
}

/* --- NATIVE AD / PROMO BANNER (Stable Container, Active Button) --- */
.bc-promo {
    display: flex;
    align-items: center;
    
    /* 1. Subtle Brand Tint (Fades from Light Teal to White) */
    background: linear-gradient(to right, #f1f8f9, #ffffff);
    
    /* 2. Soft Teal Border */
    border: 1px solid #dae8ea; 
    border-left: 6px solid #266065; /* Thicker Brand Accent */
    border-radius: 8px;
    
    padding: 18px 25px;
    margin: 25px 0;
    
    /* 3. Static Colored Shadow (Glows slightly with brand color) */
    box-shadow: 0 4px 12px rgba(38, 96, 101, 0.08); 
}

/* REMOVED: .bc-promo:hover block so the container never moves */

.bc-promo-icon {
    font-size: 28px;
    margin-right: 20px;
    flex-shrink: 0;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
}

.bc-promo-text {
    flex-grow: 1;
    color: #2c3e50;
    font-size: 1.05rem;
    margin-right: 25px;
    line-height: 1.5;
}

/* The Button Container - RESET */
.bc-promo-cta {
    background: transparent;
    padding: 0;
    border: none;
}

/* THE ACTUAL LINK BUTTON */
.bc-promo-cta a {
    display: inline-block !important;
    background-color: #266065 !important;
    color: white !important;
    padding: 12px 24px !important;
    border-radius: 6px !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    text-decoration: none !important;
    transition: all 0.2s ease; /* Smooth animation for the button */
    line-height: 1 !important;
    border: none !important;
    white-space: nowrap !important;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1) !important;
}

/* Button Hover State - ONLY the button moves now */
.bc-promo-cta a:hover {
    background-color: #163a3d !important; /* Darker Teal */
    transform: translateY(-2px);            /* Lifts up */
    box-shadow: 0 6px 12px rgba(0,0,0,0.2) !important; /* Deeper shadow */
    color: white !important;
    text-decoration: none !important;
}

.bc-promo-cta a.external {
    background-image: none !important;
    padding-right: 24px !important;
}

/* --- DARK MODE ADJUSTMENTS --- */
html.skin-theme-clientpref-night .bc-promo {
    background: linear-gradient(to right, #1a2628, #1e1e1e);
    border-color: #333;
    border-left-color: #4db6ac;
    box-shadow: 0 4px 15px rgba(0,0,0,0.5);
}

/* Removed Dark Mode Container Hover as well */

html.skin-theme-clientpref-night .bc-promo-text { 
    color: #e0e0e0; 
}

html.skin-theme-clientpref-night .bc-promo-cta a { 
    background-color: #4db6ac !important; 
    color: #121212 !important; 
}

html.skin-theme-clientpref-night .bc-promo-cta a:hover {
    background-color: #80cbc4 !important;
}

/* 2. Remove MediaWiki's default container gap */
#siteNotice {
    margin-bottom: 0 !important;
}

/* --- FIX SITENOTICE GAPS --- */
/* Hides the empty paragraph MediaWiki inserts automatically */
#siteNotice p {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ensures the promo box itself doesn't have extra margin in the header */
#siteNotice .bc-promo {
    margin: 0 0 10px 0 !important;
}

/* --- FIX SITENOTICE BUTTON VISIBILITY --- */
/* Target the button specifically inside the header to override skin defaults */
#siteNotice .bc-promo-cta a {
    display: inline-block !important;
    color: white !important;
    background-color: #266065 !important;
    padding: 12px 24px !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

#siteNotice .bc-promo-cta a:hover {
    background-color: #163a3d !important;
    color: white !important;
}

/* --- UNBREAKABLE APP BUTTONS --- */
.bc-app-link {
    display: inline-block;
    margin-right: 10px;
    margin-top: 10px;
}

.bc-app-link a.external {
    display: inline-block !important;
    
    /* CHANGED: Softer Teal */
    background-color: #528b91 !important; 
    
    color: white !important;
    padding: 8px 16px !important;
    border-radius: 6px !important; /* Slightly rounder to match "soft" look */
    font-weight: bold !important;
    text-decoration: none !important;
    background-image: none !important;
    padding-right: 16px !important;
    transition: background-color 0.2s ease;
}

.bc-app-link a.external:hover {
    /* Slightly darker on hover */
    background-color: #3e6b70 !important; 
    text-decoration: none !important;
}

/* --- PRO TIP CONTAINER (Yellow Style) --- */
.bc-pro-tip {
    /* 1. Background & Accent */
    background-color: #fffbf2;      /* Very light cream/yellow */
    border-left: 6px solid #f0ad4e; /* Gold/Orange accent bar */
    
    /* 2. Shape & Spacing */
    padding: 20px;
    margin-top: 25px;
    border-radius: 0 8px 8px 0;     /* Rounded corners on right side only */
    
    /* 3. Text & Shadow */
    color: #2c3e50;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05); /* Subtle lift */
    font-size: 0.95rem;
    line-height: 1.5;
}

/* --- WARNING BOX TEMPLATE --- */
.bc-warning {
    /* Base Layout (works for both) */
    width: auto;
    display: block;
    padding: 12px 15px;
    margin: 14px 0;
    border-left: 5px solid #e67e22; /* Bright Orange Border */
    border-radius: 0 4px 4px 0;     /* Rounded corners on right */
    
    /* Light Mode Colors (Default) */
    background-color: #fff1e0;
    color: #202122;
}

/* --- WARNING TEMPLATE DARK MODE FIX --- */

/* Case 1: User explicitly switched Wiki to Dark Mode */
html.skin-theme-clientpref-night .bc-warning-table {
    background: #2a1d15 !important;
    color: #f0f0f0 !important;
    border-left-color: #d35400 !important;
}

html.skin-theme-clientpref-night .bc-warning-table p {
    color: #f0f0f0 !important;
}

/* Case 2: User set Wiki to "Automatic" AND their Computer is Dark */
@media (prefers-color-scheme: dark) {
    html.skin-theme-clientpref-os .bc-warning-table {
        background: #2a1d15 !important;
        color: #f0f0f0 !important;
        border-left-color: #d35400 !important;
    }
    html.skin-theme-clientpref-os .bc-warning-table p {
        color: #f0f0f0 !important;
    }
}

/* --- NOTE TEMPLATE DARK MODE FIX --- */

/* Case 1: Wiki manually set to Dark Mode */
html.skin-theme-clientpref-night .bc-note-table {
    background: #2a2b2e !important;    /* Dark Charcoal Background */
    color: #e0e0e0 !important;         /* Off-white text */
    border-left-color: #6b7280 !important; /* Steel Grey Border */
}

html.skin-theme-clientpref-night .bc-note-table p {
    color: #e0e0e0 !important;
}

/* Case 2: Wiki set to Auto + System is Dark */
@media (prefers-color-scheme: dark) {
    html.skin-theme-clientpref-os .bc-note-table {
        background: #2a2b2e !important;
        color: #e0e0e0 !important;
        border-left-color: #6b7280 !important;
    }
    html.skin-theme-clientpref-os .bc-note-table p {
        color: #e0e0e0 !important;
    }
}

/* --- TIP TEMPLATE DARK MODE FIX --- */

/* Case 1: Wiki manually set to Dark Mode */
html.skin-theme-clientpref-night .bc-tip-table {
    background: #0c2d48 !important;    /* Dark Navy Background */
    color: #e0e0e0 !important;         /* Off-white text */
    border-left-color: #2b7cff !important; /* Keep the Bright Blue Border */
}

html.skin-theme-clientpref-night .bc-tip-table p {
    color: #e0e0e0 !important;
}

/* Case 2: Wiki set to Auto + System is Dark */
@media (prefers-color-scheme: dark) {
    html.skin-theme-clientpref-os .bc-tip-table {
        background: #0c2d48 !important;
        color: #e0e0e0 !important;
        border-left-color: #2b7cff !important;
    }
    html.skin-theme-clientpref-os .bc-tip-table p {
        color: #e0e0e0 !important;
    }
}

/* --- NEW: CROSS-BORDER APP BANNER (Matches Screenshot) --- */

.bc-app-banner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* Gradient based on requested #002D40 */
    background: linear-gradient(90deg, #002D40 0%, #004059 100%);
    border-left: 6px solid #005b7f; /* Lighter teal accent */
    border-radius: 6px;
    padding: 16px 24px;
    margin: 20px 0;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    color: #ffffff;
    gap: 20px;
}

/* Container for Icon + Text */
.bc-app-content {
    display: flex;
    align-items: center;
    gap: 15px;
    flex: 1;
}

.bc-app-icon {
    font-size: 24px; /* For the emoji or icon */
    line-height: 1;
}

.bc-app-text {
    font-size: 15px;
    line-height: 1.4;
    color: #ffffff;
}

.bc-app-text strong {
    font-weight: 700;
    color: #ffffff;
}

/* Container for App Store Buttons */
.bc-store-container {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
}

.bc-store-btn {
    display: flex;
    align-items: center;
    background-color: #0f1f24; /* Very dark teal/black */
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 5px;
    padding: 5px 12px;
    text-decoration: none !important;
    color: white !important;
    transition: transform 0.2s ease, opacity 0.2s;
}

.bc-store-btn:hover {
    transform: translateY(-2px);
    background-color: #000;
    border-color: #fff;
    opacity: 0.9;
}

.bc-store-svg {
    width: 18px;
    height: 18px;
    fill: white;
    margin-right: 8px;
}

.bc-store-text {
    display: flex;
    flex-direction: column;
    line-height: 1;
    text-align: left;
}

.bc-store-text span:first-child {
    font-size: 9px;
    opacity: 0.8;
    margin-bottom: 2px;
}

.bc-store-text span:last-child {
    font-size: 13px;
    font-weight: 700;
}

/* Mobile Responsive for Banner */
@media (max-width: 768px) {
    .bc-app-banner {
        flex-direction: column;
        align-items: flex-start;
    }
    .bc-store-container {
        width: 100%;
        justify-content: flex-start;
        margin-top: 10px;
    }
}

/* Force banner colors in Dark Mode (prevents turning gray) */
html.skin-theme-clientpref-night .bc-app-banner {
    background: linear-gradient(90deg, #002D40 0%, #004059 100%) !important;
    border-left-color: #005b7f !important;
    color: white !important;
}
html.skin-theme-clientpref-night .bc-app-text {
    color: white !important;
}

/* --- UPDATED: APP BANNER FIX --- */

/* Wrapper for the Wiki Link */
.bc-store-wrapper {
    display: inline-block;
    text-decoration: none !important;
}

/* Remove the default "external arrow" icon from these specific links */
.bc-store-wrapper a.external {
    background-image: none !important;
    padding-right: 0 !important;
    text-decoration: none !important;
    color: white !important;
}

/* The Button Styling (Now applied to a SPAN inside the link) */
.bc-store-btn {
    display: inline-flex !important;
    align-items: center;
    background-color: #0f1f24;
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 5px;
    padding: 5px 12px;
    transition: transform 0.2s ease, opacity 0.2s;
    cursor: pointer;
    line-height: 1.2;
}

.bc-store-btn:hover {
    transform: translateY(-2px);
    background-color: #000;
    border-color: #fff;
    opacity: 0.9;
}

/* Text alignment adjustments */
.bc-store-text {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    margin-left: 8px;
}

.bc-store-text span:first-child {
    font-size: 9px;
    opacity: 0.8;
    font-weight: 400;
}

.bc-store-text span:last-child {
    font-size: 13px;
    font-weight: 700;
}

/* --- DARK MODE: APP BANNER OVERRIDES --- */

/* 1. The Container */
html.skin-theme-clientpref-night .bc-app-banner {
    /* Force the Brand Gradient (don't let it turn gray) */
    background: linear-gradient(90deg, #002D40 0%, #004059 100%) !important;
    
    /* Make the left border BRIGHTER (Teal) so it pops against the black page */
    border-left-color: #4db6ac !important; 
    
    /* Add a subtle border around the rest so it doesn't bleed into the background */
    border-top: 1px solid #333 !important;
    border-right: 1px solid #333 !important;
    border-bottom: 1px solid #333 !important;
    
    /* Stronger shadow for depth */
    box-shadow: 0 4px 20px rgba(0,0,0,0.6) !important;
}

/* 2. The Text (Force it White) */
/* MediaWiki Dark Mode tries to turn text gray; this stops that. */
html.skin-theme-clientpref-night .bc-app-text,
html.skin-theme-clientpref-night .bc-app-text strong {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5); /* Better readability */
}

/* 3. The Store Buttons */
html.skin-theme-clientpref-night .bc-store-btn {
    /* Pure black background for high contrast */
    background-color: #000000 !important;
    
    /* Teal border to match the theme */
    border-color: #266065 !important; 
    color: #ffffff !important;
}

html.skin-theme-clientpref-night .bc-store-btn:hover {
    /* Slightly lighter black/teal on hover */
    background-color: #111 !important;
    border-color: #4db6ac !important;
}

/* --- NEW: ARTICLE SPECIFIC STYLES --- */

/* 1. Article Hero (Clean, No Border) */
.bc-article-hero {
    background: linear-gradient(to right, #f4f7f9, #eef5f6); /* Very subtle grey/teal fade */
    /* Border removed */
    padding: 30px;
    margin-bottom: 30px;
    border-radius: 8px; /* Uniform rounding on all corners */
}

.bc-article-hero h1 {
    margin-top: 0;
    color: #266065;
    font-size: 2.2rem;
    font-weight: 700;
    border: none;
}

.bc-article-hero p {
    font-size: 1.15rem;
    color: #546e7a;
    max-width: 800px;
    margin-bottom: 15px;
}

.bc-article-meta {
    display: flex;
    gap: 15px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #78909c;
}

.bc-article-pill {
    background: #fff;
    padding: 4px 12px;
    border-radius: 4px;
    border: 1px solid #cfd8dc;
    display: inline-block;
}

/* Styling for Icons inside Article Pills */
.bc-article-pill i {
    margin-right: 6px;
    color: #266065; /* Brand Teal */
}

/* Dark Mode Fixes for Article Hero */
html.skin-theme-clientpref-night .bc-article-hero {
    background: #1e1e1e !important;
    /* Removed border-left-color override */
}
html.skin-theme-clientpref-night .bc-article-hero h1 {
    color: #4db6ac !important;
}
html.skin-theme-clientpref-night .bc-article-hero p,
html.skin-theme-clientpref-night .bc-article-meta {
    color: #b0bec5 !important;
}
html.skin-theme-clientpref-night .bc-article-pill {
    background: #263238 !important;
    border-color: #37474f !important;
}
html.skin-theme-clientpref-night .bc-article-pill i {
    color: #4db6ac !important;
}

/* 2. Screenshot Container (Frames the images) */
.bc-screenshot {
    display: block;
    margin: 25px auto;
    border: 1px solid #e1e8eb;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08); /* Lifts image off page */
    max-width: 100%;
    height: auto;
}

/* 3. Step Number Circle */
.bc-step-circle {
    display: inline-block;
    width: 28px;
    height: 28px;
    background: #266065;
    color: white;
    border-radius: 50%;
    text-align: center;
    line-height: 28px;
    font-weight: bold;
    margin-right: 10px;
}

/* Dark Mode Fixes for Article Hero */
html.skin-theme-clientpref-night .bc-article-hero {
    background: #1e1e1e !important;
    border-left-color: #4db6ac !important;
}
html.skin-theme-clientpref-night .bc-article-hero h1 {
    color: #4db6ac !important;
}
html.skin-theme-clientpref-night .bc-article-hero p,
html.skin-theme-clientpref-night .bc-article-meta {
    color: #b0bec5 !important;
}
html.skin-theme-clientpref-night .bc-article-pill {
    background: #263238 !important;
    border-color: #37474f !important;
}

/* Styling for Icons inside Article Pills */
.bc-article-pill i {
    margin-right: 6px;
    color: #266065; /* Brand Teal */
}

/* Dark Mode fix for the icons */
html.skin-theme-clientpref-night .bc-article-pill i {
    color: #4db6ac; /* Lighter Teal */
}

/* --- FIX VIDEO PLAYBACK INSIDE GRID CARDS --- */
.bc-card .embedvideo {
    /* Reset display so the player can calculate size */
    display: block !important;
    width: 100% !important;
    height: auto !important;
    
    /* Ensure the player sits 'above' the card background for clicking */
    position: relative !important;
    z-index: 10 !important; 
}

/* Force the iframe to fill the container */
.bc-card .embedvideo iframe,
.bc-card .embedvideo object {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16/9 !important;
}

/* --- VIDEO MODAL STYLES (Fixed) --- */

/* The Trigger Container */
.bc-video-trigger {
    position: relative;
    display: block;
    width: 100%;
    /* Force 16:9 Aspect Ratio */
    padding-bottom: 56.25%; 
    background: #000;
    border-radius: 8px;
    cursor: pointer;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    transition: transform 0.2s;
}

.bc-video-trigger:hover {
    transform: scale(1.02);
}

/* The Thumbnail Image (Real Image Tag) */
.bc-video-trigger img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ensures it fills the box without distortion */
    opacity: 0.8;
    transition: opacity 0.3s;
}

.bc-video-trigger:hover img {
    opacity: 0.6; /* Darken slightly on hover */
}

/* The Play Icon (Centered) */
.bc-play-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 60px;
    color: white;
    z-index: 10;
    pointer-events: none; /* Let clicks pass through to the trigger */
    text-shadow: 0 2px 10px rgba(0,0,0,0.6);
}

/* --- THE MODAL OVERLAY --- */
.bc-modal-overlay {
    display: none; /* Hidden by default */
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    z-index: 99999;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(8px);
    align-items: center;
    justify-content: center;
}

/* Active Class */
.bc-modal-overlay.active {
    display: flex;
}

/* Modal Content Box */
.bc-modal-content {
    position: relative;
    width: 90%;
    max-width: 1000px;
    aspect-ratio: 16 / 9;
    background: black;
    border-radius: 8px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.8);
}

/* Close Button */
.bc-modal-close {
    position: absolute;
    top: -40px;
    right: 0;
    color: white;
    font-size: 40px;
    cursor: pointer;
    line-height: 1;
}

/* --- Video Caption Style (Fixed Font) --- */
.bc-video-caption {
    margin-top: 15px;
    text-align: center;
    /* Force standard sans-serif font to match article body */
    font-family: sans-serif !important; 
    font-size: 1rem;
    color: #333;
    line-height: 1.5;
    /* Ensures text wraps normally and isn't treated as code */
    white-space: normal !important; 
    border: none !important;
    background: transparent !important;
}

/* The Label Styling (Teal & Bold) */
.bc-video-caption strong {
    color: #266065;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.5px;
    margin-right: 6px;
}

/* --- Floated Video (Allows text to wrap) --- */
.bc-float-video {
    float: right;
    width: 45%;            /* Takes up slightly less than half the card */
    min-width: 320px;      /* Prevents it from getting too small */
    margin-left: 40px;     /* Space between text and video */
    margin-bottom: 20px;   /* Space below video if text wraps under */
}

/* Mobile & Tablet: Disable float so it stacks nicely */
@media (max-width: 850px) {
    .bc-float-video {
        float: none;
        width: 100%;
        margin-left: 0;
        margin-bottom: 30px; /* Adds gap between video and text */
    }
}

/* ============================================================
   --- TABLE OF CONTENTS (TOC) - VARIABLE SYSTEM ---
   1. Define the palettes (Light vs Dark)
   2. Apply variables to the elements
   ============================================================ */

/* 1. DEFAULT PALETTE (Light Mode) */
:root {
    --toc-bg: #ffffff;
    --toc-border: #e1e8eb;
    --toc-shadow: rgba(0,0,0,0.05);
    --toc-title-color: #266065;
    --toc-title-border: #eef5f6;
    --toc-text: #546e7a;
    --toc-hover-bg: #e0f2f1;
    --toc-hover-text: #266065;
    --toc-line: #e1e8eb;
    --toc-number: #b0bec5;
}

/* 2. DARK MODE PALETTE (OS Preference + Night Class) */
/* Applies if OS is Dark AND User hasn't forced Light */
@media (prefers-color-scheme: dark) {
    :root:not(.skin-theme-clientpref-light) {
        --toc-bg: #1e1e1e;
        --toc-border: #333333;
        --toc-shadow: rgba(0,0,0,0.5);
        --toc-title-color: #4db6ac;
        --toc-title-border: #333333;
        --toc-text: #e0e0e0;
        --toc-hover-bg: #263238;
        --toc-hover-text: #80cbc4;
        --toc-line: #424242;
        --toc-number: #757575;
    }
}

/* Applies if User explicitly clicks Dark Mode button */
html.skin-theme-clientpref-night {
    --toc-bg: #1e1e1e;
    --toc-border: #333333;
    --toc-shadow: rgba(0,0,0,0.5);
    --toc-title-color: #4db6ac;
    --toc-title-border: #333333;
    --toc-text: #e0e0e0;
    --toc-hover-bg: #263238;
    --toc-hover-text: #80cbc4;
    --toc-line: #424242;
    --toc-number: #757575;
}

/* 3. FORCE LIGHT PALETTE (User explicitly clicks Light Mode) */
html.skin-theme-clientpref-light {
    --toc-bg: #ffffff;
    --toc-border: #e1e8eb;
    --toc-shadow: rgba(0,0,0,0.05);
    --toc-title-color: #266065;
    --toc-title-border: #eef5f6;
    --toc-text: #546e7a;
    --toc-hover-bg: #e0f2f1;
    --toc-hover-text: #266065;
    --toc-line: #e1e8eb;
    --toc-number: #b0bec5;
}


/* ============================================================
   --- COMPONENT STYLING (Uses Variables) ---
   No need to edit below this line for colors!
   ============================================================ */

/* Main Container */
.mw-parser-output #toc,
.mw-parser-output .toc,
.vector-toc {
    background-color: var(--toc-bg) !important;
    border: 1px solid var(--toc-border) !important;
    border-radius: 12px !important;
    padding: 12px 15px !important;
    box-shadow: 0 4px 15px var(--toc-shadow) !important;
    display: inline-block !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 200px !important;
    max-width: 350px !important;
    margin-bottom: 25px !important;
    font-family: 'Segoe UI', Roboto, sans-serif !important;
    transition: background-color 0.3s ease, border-color 0.3s ease !important;
}

/* Title Header */
.mw-parser-output #toctitle h2,
.vector-toc-title {
    font-family: 'Segoe UI', Roboto, sans-serif !important;
    font-weight: 800 !important;
    color: var(--toc-title-color) !important;
    font-size: 0.95rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 8px !important;
    padding-bottom: 8px !important;
    border-bottom: 2px solid var(--toc-title-border) !important;
    width: 100% !important;
}

/* Links (Base) */
.mw-parser-output #toc a,
.vector-toc-link {
    text-decoration: none !important;
    color: var(--toc-text) !important;
    background: transparent !important;
    display: block !important;
    padding: 5px 8px !important;
    border-radius: 4px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
}

/* Links (Hover) */
.mw-parser-output #toc a:hover,
.vector-toc-link:hover {
    background-color: var(--toc-hover-bg) !important;
    color: var(--toc-hover-text) !important;
    text-decoration: none !important;
}

/* List Structure */
.mw-parser-output #toc ul, .vector-toc-list {
    list-style: none !important; margin: 0 !important; padding: 0 !important;
}
.mw-parser-output #toc li, .vector-toc-list-item {
    margin: 0 !important; padding: 0 !important; font-size: 0.9rem !important;
    line-height: 1.2 !important; white-space: normal !important; word-wrap: break-word !important;
}

/* Indentation Lines */
.mw-parser-output #toc ul ul, .vector-toc-list .vector-toc-list {
    margin-left: 0 !important;
    padding-left: 10px !important;
    border-left: 2px solid var(--toc-line) !important;
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}

/* Numbers & Toggles */
.tocnumber { color: var(--toc-number) !important; font-size: 0.85em !important; margin-right: 5px !important; }
.toctogglelabel { font-size: 0.75rem !important; color: var(--toc-text) !important; opacity: 0.7; }