/* =========================================================
   MY TRADING JOURNAL — APP DESIGN SYSTEM V1
   Global layout, spacing and component geometry.
   Ambient artwork/hero imagery stays in ambient-hero.css.
   ========================================================= */

:root {
    /* ---------------------------------------------------------
       APP SHELL
       --------------------------------------------------------- */
    --ta-ds-content-max: 1680px;
    --ta-ds-content-gutter-x: 28px;
    --ta-ds-section-gap: 18px;
    --ta-ds-page-gap: 24px;

    /* ---------------------------------------------------------
       HERO SYSTEM
       Home may stay larger. All internal pages use STANDARD.
       --------------------------------------------------------- */
    --ta-hero-standard-height: 230px;
    --ta-hero-home-height: 290px;

    --ta-hero-pad-x: 24px;
    --ta-hero-pad-y: 22px;
    --ta-hero-content-gap: 18px;
    --ta-hero-copy-gap: 8px;
    --ta-hero-badge-gap: 7px;
    --ta-hero-actions-gap: 8px;
    --ta-hero-module-gap: 14px;
    --ta-hero-bottom-row-gap: 28px;

    /* ---------------------------------------------------------
       CARDS / PANELS
       --------------------------------------------------------- */
    --ta-card-bg-top: #181b20;
    --ta-card-bg-bottom: #0f1115;
    --ta-card-border: rgba(255,255,255,.075);
    --ta-card-border-soft: rgba(255,255,255,.055);
    --ta-card-radius: 0px;
    --ta-card-padding: 18px;
    --ta-card-shadow: 0 16px 42px rgba(0,0,0,.16);

    /* ---------------------------------------------------------
       CONTROLS
       --------------------------------------------------------- */
    --ta-control-height: 39px;
    --ta-control-gap: 8px;
    --ta-control-radius: 0px;

    /* ---------------------------------------------------------
       BRAND
       --------------------------------------------------------- */
    --ta-ds-gold: #d4a84f;
    --ta-ds-gold-bright: #efbd50;
    --ta-ds-green: #62c98b;
    --ta-ds-red: #e47b7b;
}


/* =========================================================
   HERO COMPONENTS
   ========================================================= */

/* Standard for every internal App Shell V2 page. */
html body.ta-app-v2 .ta-hero-internal {
    height: var(--ta-hero-standard-height) !important;
    min-height: var(--ta-hero-standard-height) !important;
    max-height: var(--ta-hero-standard-height) !important;
}

/* Large landing/home hero. */
html body.ta-app-v2 .ta-hero-home {
    min-height: var(--ta-hero-home-height) !important;
}

/* All standard heroes get predictable internal breathing room. */
html body.ta-app-v2 .ta-hero-internal {
    box-sizing: border-box !important;
}

/* Common hero content wrappers already used across the project. */
html body.ta-app-v2 .ta-hero-internal .ta-d3-hero-inner,
html body.ta-app-v2 .ta-hero-internal .ta-projects-banner-content,
html body.ta-app-v2 .ta-hero-internal .ta-ft3-head-inner,
html body.ta-app-v2 .ta-hero-internal .ta-hero-inner {
    height: 100% !important;
    min-height: 0 !important;
    padding-top: var(--ta-hero-pad-y) !important;
    padding-bottom: var(--ta-hero-pad-y) !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

/* Generic internal hero rows. */
html body.ta-app-v2 .ta-hero-internal .ta-projects-hero-row,
html body.ta-app-v2 .ta-hero-internal .ta-d3-hero-row,
html body.ta-app-v2 .ta-hero-internal .ta-hero-row {
    width: 100% !important;
    align-items: center !important;
}

/* Backtest currently uses the hero element itself as the grid wrapper. */
html body.ta-app-v2 .bt-head.ta-hero-internal {
    padding: var(--ta-hero-pad-y) var(--ta-hero-pad-x) !important;
    align-items: center !important;
}

/* Keep action groups away from the lower edge. */
html body.ta-app-v2 .ta-hero-internal .bt-head-actions,
html body.ta-app-v2 .ta-hero-internal .ta-projects-toolbar-actions,
html body.ta-app-v2 .ta-hero-internal .ta-d3-hero-actions,
html body.ta-app-v2 .ta-hero-internal .ta-hero-actions {
    align-self: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Badges/tags maintain an intentional cushion from edges. */
html body.ta-app-v2 .ta-hero-internal .bt-tags,
html body.ta-app-v2 .ta-hero-internal .ta-ft3-badges,
html body.ta-app-v2 .ta-hero-internal .ta-projects-badges,
html body.ta-app-v2 .ta-hero-internal .ta-hero-badges {
    gap: var(--ta-hero-badge-gap) !important;
}


/* Generic two-sided bottom row for internal hero content:
   badges/tags left, actions right. */
html body.ta-app-v2 .ta-hero-bottom-row {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: var(--ta-hero-bottom-row-gap);
    margin-top: var(--ta-hero-module-gap);
}

html body.ta-app-v2 .ta-hero-actions {
    align-self: center !important;
}

@media (max-width: 900px) {
    html body.ta-app-v2 .ta-hero-bottom-row {
        grid-template-columns: 1fr;
        gap: 12px;
    }
}


/* =========================================================
   SHARED PREMIUM CARD SURFACE
   Optional utility for future modules.
   ========================================================= */
.ta-card,
.ta-panel-premium {
    position: relative;
    isolation: isolate;
    background:
        radial-gradient(760px 170px at 12% 0%, rgba(215,170,70,.045), transparent 58%),
        linear-gradient(180deg, var(--ta-card-bg-top), var(--ta-card-bg-bottom));
    border: 1px solid var(--ta-card-border);
    border-radius: var(--ta-card-radius);
    box-shadow: var(--ta-card-shadow);
}

.ta-card::before,
.ta-panel-premium::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 34%;
    height: 1px;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        rgba(239,189,80,.52),
        rgba(215,170,70,.14),
        transparent
    );
    box-shadow: 0 0 14px rgba(215,170,70,.08);
}


/* =========================================================
   RESPONSIVE HERO
   Desktop keeps one mathematical standard.
   Mobile may grow naturally to avoid clipping.
   ========================================================= */
@media (max-width: 900px) {
    html body.ta-app-v2 .ta-hero-internal {
        height: auto !important;
        min-height: 210px !important;
        max-height: none !important;
    }

    html body.ta-app-v2 .ta-hero-internal .ta-d3-hero-inner,
    html body.ta-app-v2 .ta-hero-internal .ta-projects-banner-content,
    html body.ta-app-v2 .ta-hero-internal .ta-ft3-head-inner,
    html body.ta-app-v2 .ta-hero-internal .ta-hero-inner {
        min-height: 210px !important;
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }

    html body.ta-app-v2 .bt-head.ta-hero-internal {
        min-height: 210px !important;
        height: auto !important;
        max-height: none !important;
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }
}

@media (max-width: 600px) {
    :root {
        --ta-hero-pad-x: 18px;
    }
}
