/* Portfolio Monitoring — "gold observatory" (owner-approved design, 2026-10-17/18; kit
   Investor_Hive_Portfolio_Monitoring_Developer_Kit). Overrides portfolio-v2.css and the page's inline <style>, which
   renders later in the document, so every rule starts from the page root (.pf-page.portfolio-v2) to win on specificity. */

.pf-page.portfolio-v2 {
    box-sizing: border-box;   /* the page sets width: 100% plus side padding */
    --pm-gold-face:
        linear-gradient(118deg, rgba(255, 255, 213, .54) 0%, rgba(255, 245, 167, .08) 30%, rgba(206, 145, 17, .12) 75%, rgba(255, 221, 113, .3) 100%),
        linear-gradient(180deg, #fff6a2 0%, #ffe376 15%, #efbd46 66%, #e6ac2e 90%, #f8d979 100%);
    --pm-gold-shadow: inset 0 2px 3px #fffbc9, inset 0 -3px 3px #bb7e19, 0 0 2px #fffce0, 0 0 14px #efa92c66, 0 4px 10px #000a;
    --pm-text: #f6f7fd;
    --pm-muted: #bed0ef;
    --pm-gold: #ffdb63;
    --pm-gold-line: #e8b432;
    --pm-blue: #94baff;
    --pm-green: #83edc8;
    --pm-focus: #c9e7ff;
    container-type: inline-size;
    font-family: 'DM Sans', Arial, sans-serif;
    color: var(--pm-text);
}

.pf-page.portfolio-v2 .pf-hero *,
.pf-page.portfolio-v2 .pf-outside-card *,
.pf-page.portfolio-v2 .pv-section *,
.pf-page.portfolio-v2 .pv-kpis * { box-sizing: border-box; }

/* Buttons otherwise fall back to the browser font. */
.pf-page.portfolio-v2 button,
.pf-page.portfolio-v2 .pf-outside-btn { font-family: inherit; }

/* ── Hero: the full observatory canvas (1024 × 454) behind live text. Its top band held the original header, so it is
   lifted slightly and clipped; the ring, Hive, plinth and globe stay whole. ── */
.pf-page.portfolio-v2 .pf-hero {
    position: relative;
    isolation: isolate;
    box-sizing: border-box;
    min-height: 37.3cqw;
    padding: 9.6cqw 0 24px;
    margin-bottom: 18px;
    overflow: clip;
}

.pf-page.portfolio-v2 .pf-hero-art {
    position: absolute;
    z-index: -1;
    top: -7cqw;
    left: 0;
    width: 100%;
    height: auto;
    max-width: none;
    pointer-events: none;
    user-select: none;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 95%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 20%, #000 80%, transparent 100%);
    -webkit-mask-composite: source-in;
    mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 95%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 20%, #000 80%, transparent 100%);
    mask-composite: intersect;
}


.pf-page.portfolio-v2 .pf-hero-content { max-width: min(54%, 660px); }

.pf-page.portfolio-v2 .pf-hero-kicker {
    margin: 0 0 4px;
    font-size: clamp(13px, 1.56cqw, 18px);
    font-weight: 600;
    letter-spacing: .3em;
    text-transform: uppercase;
    color: #ffe174;
}

.pf-page.portfolio-v2 .pf-hero .pf-title {
    display: block;
    margin: 0 0 10px;
    font-family: 'Outfit', sans-serif;
    font-size: clamp(34px, 4.7cqw, 60px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.02em;
    text-transform: none;
    color: #fff;
}

.pf-page.portfolio-v2 .pf-hero .pf-title span {
    background: linear-gradient(180deg, #fff4b0 10%, #f8d65b 53%, #c49227 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: #edc24f;
    -webkit-text-fill-color: transparent;
}

.pf-page.portfolio-v2 .pf-hero .pf-sub {
    margin: 0;
    max-width: 30em;
    font-size: clamp(15px, 1.76cqw, 19px);
    line-height: 1.45;
    color: #d6dff2;
    text-shadow: 0 1px 2px #000, 0 0 12px #000c;
}

/* ── Outside-investment panel ── */
.pf-page.portfolio-v2 .pf-outside-card {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px 22px;
    margin-bottom: 22px;
    padding: 18px 22px;
    border: 1px solid var(--pm-gold-line);
    border-radius: 16px;
    background: linear-gradient(110deg, #0b1830, #050d1d 70%);
    box-shadow: inset 0 1px 1px #ffe59a22;
}

.pf-page.portfolio-v2 .pf-outside-icon { width: 56px; height: 56px; font-size: 0; background: none; }
.pf-page.portfolio-v2 .pf-outside-title { font-size: 18.5px; font-weight: 700; line-height: 1.35; color: #ffe7a3; margin-bottom: 4px; }
.pf-page.portfolio-v2 .pf-outside-text { font-size: 13.5px; line-height: 1.65; color: var(--pm-muted); }
.pf-page.portfolio-v2 .pf-outside-text b { color: #fff; }
.pf-page.portfolio-v2 .pf-outside-text b:first-child { color: var(--pm-gold); }
.pf-page.portfolio-v2 .pf-outside-usage { margin-top: 10px; font-size: 13px; color: var(--pm-muted); }
.pf-page.portfolio-v2 .pf-outside-usage b { color: var(--pm-gold); }
.pf-page.portfolio-v2 .pf-outside-usage-note { margin-left: 10px; padding-left: 12px; border-left: 1px solid #3b4d74; color: #a9b8d6; }
.pf-page.portfolio-v2 .pf-usage-meter { display: none; }

.pf-page.portfolio-v2 .pf-outside-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 22px;
    border: 1.5px solid #ffeba2;
    border-radius: 12px;
    background: var(--pm-gold-face);
    box-shadow: var(--pm-gold-shadow);
    color: #120d02;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
}

/* Restates the gold face: the global .nea-btn-primary hover (investor-dashboard-v3.css) would turn it green. */
.pf-page.portfolio-v2 .pf-outside-btn:hover { background: var(--pm-gold-face); color: #120d02; filter: brightness(1.05); }
.pf-page.portfolio-v2 .pf-outside-btn[aria-disabled="true"] { opacity: .55; filter: saturate(.5); cursor: not-allowed; }

/* Shared badges */
.pf-page.portfolio-v2 .pf-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 9px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    vertical-align: middle;
}

.pf-page.portfolio-v2 .pf-badge.ext { color: #ffd98a; background: #2e2208; border-color: #8a6a26; }
.pf-page.portfolio-v2 .pf-badge.nea,
.pf-page.portfolio-v2 .pf-badge.partial { color: #b8d1ff; background: #142453; border-color: #2d4c96; }

/* ── Tabs ── */
.pf-page.portfolio-v2 .pf-tabs { gap: 12px; margin-bottom: 18px; }

.pf-page.portfolio-v2 .pf-tab {
    min-height: 44px;
    padding: 11px 28px;
    border: 1px solid #2f4168;
    border-radius: 12px;
    background: #0a1428;
    color: #e6ebf7;
    font-size: 16px;
    font-weight: 700;
}

.pf-page.portfolio-v2 .pf-tab:hover { background: #0f1c38; border-color: #4a6299; color: #fff; }

.pf-page.portfolio-v2 .pf-tab.active {
    border: 1.5px solid #ffeba2;
    background: var(--pm-gold-face);
    box-shadow: var(--pm-gold-shadow);
    color: #120d02;
}

.pf-page.portfolio-v2 .pf-tab:focus-visible { outline: 2px solid var(--pm-focus); outline-offset: 3px; }

/* ── Summary metrics: one gold-edged panel, divided columns ── */
.pf-page.portfolio-v2 .pv-kpis {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    margin: 0 0 22px;
    padding: 6px 0;
    border: 1px solid var(--pm-gold-line);
    border-radius: 16px;
    background: linear-gradient(120deg, #0b1830, #050d1d 70%);
}

.pf-page.portfolio-v2 .pv-kpi {
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 16px 20px;
}

.pf-page.portfolio-v2 .pv-kpi + .pv-kpi { border-left: 1px solid #22345a; }
.pf-page.portfolio-v2 .pv-kpi::before { display: none; }
.pf-page.portfolio-v2 .pv-kpi-img { display: block; width: 38px; height: 38px; margin-bottom: 14px; border-radius: 9px; }
.pf-page.portfolio-v2 .pv-kpi-label { font-family: 'Outfit', sans-serif; font-size: 11.5px; font-weight: 600; letter-spacing: .09em; color: #dbe3f5; }
.pf-page.portfolio-v2 .pv-kpi-value { overflow-wrap: normal; margin-top: 6px; font-family: 'DM Sans', Arial, sans-serif; font-size: clamp(22px, 2.9cqw, 31px); font-weight: 700; font-variant-numeric: tabular-nums; }
.pf-page.portfolio-v2 .pv-kpi-sub { color: #a9b8d6; font-size: 13px; }

/* Realized tab keeps three glyph metrics. */
/* Realized: three metrics (class set in Portfolio.razor). */
.pf-page.portfolio-v2 .pv-kpis--realized { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* ── Sections: full raised gold band over a navy, gold-edged panel ── */
.pf-page.portfolio-v2 .pv-section {
    margin-bottom: 24px;
    border: 1px solid var(--pm-gold-line);
    border-radius: 16px;
    background: linear-gradient(122deg, #0a1423, #030a14 78%, #06101e);
}

.pf-page.portfolio-v2 .pv-section > .pv-section-head {
    position: relative;
    margin: -1px -1px 0;
    min-height: 54px;
    padding: 8px 16px;
    gap: 14px;
    justify-content: flex-start;
    border: 1.5px solid #fff1a2;
    border-radius: 15px 15px 12px 12px;
    background: var(--pm-gold-face);
    box-shadow: var(--pm-gold-shadow);
}

.pf-page.portfolio-v2 .pv-section-icon { flex: none; width: 40px; height: 40px; border-radius: 9px; }

.pf-page.portfolio-v2 .pv-section-title {
    font-family: 'DM Sans', Arial, sans-serif;
    font-size: 21px;
    font-weight: 700;
    color: #120d02;
}

.pf-page.portfolio-v2 .pv-section-head > .pv-head-pill,
.pf-page.portfolio-v2 .pv-section-head > .pv-head-pills { margin-left: auto; }

.pf-page.portfolio-v2 .pv-head-pill {
    padding: 6px 16px;
    border-radius: 999px;
    background: linear-gradient(145deg, #302108, #0c0902);
    color: #ffeb99;
    font-size: 13.5px;
    font-weight: 700;
    box-shadow: inset 0 1px 1px #7c591977, 0 1px 1px #fff08e99;
}

.pf-page.portfolio-v2 .pv-head-pill--slots { background: linear-gradient(145deg, #0d5a49, #063a2f); color: #b8f5df; }
.pf-page.portfolio-v2 .pv-head-pill--slots.is-full { background: linear-gradient(145deg, #6a1f1f, #3d0f0f); color: #ffd0d0; }

.pf-page.portfolio-v2 .pv-section-body { padding: 16px; }

/* Draft rows */
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px 18px;
    flex-wrap: wrap;
    padding: 16px 18px;
    border: 1px solid #23345a;
    border-radius: 12px;
    background: linear-gradient(140deg, #0b1626, #050d19 65%);
}

.pf-page.portfolio-v2 .pf-co { font-size: 17px; font-weight: 700; color: #fff; overflow-wrap: anywhere; }
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-co { font-size: 18px; }
.pf-page.portfolio-v2 .pf-meta { color: var(--pm-muted); font-size: 13.5px; }
.pf-page.portfolio-v2 .pf-meta b { color: #fff; }

/* Buttons: gold primary, blue-outlined secondary, red Archive. */
.pf-page.portfolio-v2 .pf-mini-btn,
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-mini-btn {
    min-height: 38px;
    padding: 8px 16px;
    border: 1px solid #3d63c9;
    border-radius: 10px;
    background: #0b1838;
    color: #e3ebff;
    font-size: 14px;
    font-weight: 700;
}

.pf-page.portfolio-v2 .pf-mini-btn:hover:not(:disabled),
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-mini-btn:hover:not(:disabled) { background: #11224d; border-color: #6d92f0; filter: none; }

.pf-page.portfolio-v2 .pf-mini-btn.danger,
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-mini-btn.danger {
    border-color: #b14f50;
    background: linear-gradient(150deg, #3a1316, #1d0a0d);
    color: #ffb7b2;
}

.pf-page.portfolio-v2 .pf-mini-btn.danger:hover:not(:disabled),
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-mini-btn.danger:hover:not(:disabled) { border-color: #e2554f; background: #471719; }

.pf-page.portfolio-v2 .pf-mini-btn.primary,
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-mini-btn.primary,
.pf-page.portfolio-v2 .pf-add-btn,
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-add-btn {
    min-height: 40px;
    padding: 9px 22px;
    border: 1.5px solid #ffeba2;
    border-radius: 11px;
    background: var(--pm-gold-face);
    box-shadow: var(--pm-gold-shadow);
    color: #120d02;
    font-size: 15px;
    font-weight: 700;
}

.pf-page.portfolio-v2 .pf-mini-btn.primary:hover:not(:disabled),
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-mini-btn.primary:hover:not(:disabled),
.pf-page.portfolio-v2 .pf-add-btn:hover:not(:disabled),
.pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-add-btn:hover:not(:disabled) { background: var(--pm-gold-face); filter: brightness(1.05); }

.pf-page.portfolio-v2 .pf-mini-btn:focus-visible,
.pf-page.portfolio-v2 .pf-add-btn:focus-visible { outline: 2px solid var(--pm-focus); outline-offset: 3px; }

/* Position cards: blue top edge, chips, green invested figure */
.pf-page.portfolio-v2 .pv-grid { gap: 14px; }
.pf-page.portfolio-v2 .pv-section--positions .pv-grid .pf-card { min-height: 300px; }

.pf-page.portfolio-v2 .pv-grid .pf-card {
    padding: 18px 18px 16px;
    border: 1px solid #22314a;
    border-radius: 14px;
    background: linear-gradient(140deg, #0b1626 0%, #050d19 65%, #0a1320 100%);
}

.pf-page.portfolio-v2 .pv-grid .pf-card::before { height: 3px; background: #5b8def; box-shadow: 0 0 8px #5b8def88; }
.pf-page.portfolio-v2 .pv-grid .pf-card:hover { border-color: #3d5a96; }
.pf-page.portfolio-v2 .pf-meta--chips { gap: 8px; margin-top: 10px; }

.pf-page.portfolio-v2 .pf-chip {
    padding: 4px 11px;
    border: 1px solid #2a3d63;
    border-radius: 999px;
    background: #0b1430;
    color: #c6d3ee;
    font-size: 12.5px;
}

.pf-page.portfolio-v2 .pf-chip b { color: #fff; }
.pf-page.portfolio-v2 .pf-ext-hint { color: var(--pm-muted); font-size: 13px; line-height: 1.55; }
.pf-page.portfolio-v2 .pf-ext-hint b { color: #fff; }
.pf-page.portfolio-v2 .pv-grid .pf-right { border-top-color: #1d2c4c; }
.pf-page.portfolio-v2 .pf-amount { font-size: 29px; font-weight: 700; color: var(--pm-green); font-variant-numeric: tabular-nums; line-height: 1.12; }
.pf-page.portfolio-v2 .pf-amount-lbl { color: #c3cee6; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.pf-page.portfolio-v2 .pf-actions { gap: 10px; }

/* Pager */
.pf-page.portfolio-v2 .pv-page-btn { border-color: #22345a; background: #0b1428; }
.pf-page.portfolio-v2 .pv-page-btn.on { border-color: #5b8def; background: #13224a; color: #fff; }
.pf-page.portfolio-v2 .pv-page-info { color: #a9b8d6; }

.pf-page.portfolio-v2 .pf-empty { border: 1px solid #23345a; border-radius: 16px; background: #071022; color: var(--pm-muted); }

/* ── Tablet ── */
@media (max-width: 900px) {
    /* Active metrics: Positions and Companies, Total invested across the row, then Value and MOIC (the approved
       mobile design; the kit applies it from 900px down). Dividers follow the reordered grid. */
    .pf-page.portfolio-v2 .pv-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pf-page.portfolio-v2 .pv-kpi--positions { order: 1; }
    .pf-page.portfolio-v2 .pv-kpi--companies { order: 2; }
    .pf-page.portfolio-v2 .pv-kpi--invested { order: 3; grid-column: 1 / -1; }
    .pf-page.portfolio-v2 .pv-kpi--value { order: 4; }
    .pf-page.portfolio-v2 .pv-kpi--moic { order: 5; }
    .pf-page.portfolio-v2 .pv-kpis .pv-kpi { border: 0; }
    .pf-page.portfolio-v2 .pv-kpis .pv-kpi--invested,
    .pf-page.portfolio-v2 .pv-kpis .pv-kpi--value,
    .pf-page.portfolio-v2 .pv-kpis .pv-kpi--moic { border-top: 1px solid #22345a; }
    .pf-page.portfolio-v2 .pv-kpis .pv-kpi--companies,
    .pf-page.portfolio-v2 .pv-kpis .pv-kpi--moic { border-left: 1px solid #22345a; }

    /* Realized keeps its three in a row, divided. */
    .pf-page.portfolio-v2 .pv-kpis--realized { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .pf-page.portfolio-v2 .pv-kpis--realized .pv-kpi + .pv-kpi { border-left: 1px solid #22345a; }

    /* The outside action moves under the copy. */
    .pf-page.portfolio-v2 .pf-outside-card { grid-template-columns: 56px minmax(0, 1fr); }
    .pf-page.portfolio-v2 .pf-outside-btn { grid-column: 2 / -1; justify-self: start; }
}

/* ── Phone (approved mobile design) ── */
@media (max-width: 768px) {
    /* The page's own side padding (inline style) doubles the app gutter on phones. */
    .pf-page.portfolio-v2 { padding-left: 0; padding-right: 0; }

    /* The tighter sculpture crop sits above the text, pinned right. */
    .pf-page.portfolio-v2 .pf-hero { min-height: 0; padding: 172px 0 18px; overflow: visible; }
    .pf-page.portfolio-v2 .pf-hero-art {
        display: block;
        top: -6px;
        left: auto;
        right: -4px;
        width: 236px;
        max-width: none !important;
        -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 18%), linear-gradient(180deg, #000 70%, transparent 100%);
        -webkit-mask-composite: source-in;
        mask-image: linear-gradient(90deg, transparent 0%, #000 18%), linear-gradient(180deg, #000 70%, transparent 100%);
        mask-composite: intersect;
    }
    .pf-page.portfolio-v2 .pf-hero-content { max-width: none; }
    .pf-page.portfolio-v2 .pf-hero .pf-title { font-size: clamp(34px, 11vw, 46px); }

    .pf-page.portfolio-v2 .pf-outside-card { grid-template-columns: 40px minmax(0, 1fr); align-items: start; padding: 18px 16px; gap: 14px; }
    .pf-page.portfolio-v2 .pf-outside-icon { width: 40px; height: 40px; }
    .pf-page.portfolio-v2 .pf-outside-btn { grid-column: 1 / -1; width: 100%; min-height: 50px; }
    .pf-page.portfolio-v2 .pf-outside-usage-note { margin-left: 6px; padding-left: 8px; }
    .pf-page.portfolio-v2 .pf-usage-meter {
        display: block;
        height: 5px;
        margin-top: 10px;
        border-radius: 5px;
        background: #1b2a4a;
        overflow: hidden;
    }
    .pf-page.portfolio-v2 .pf-usage-meter span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #ffe376, #e6ac2e); }

    .pf-page.portfolio-v2 .pf-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 6px; border: 1px solid #22345a; border-radius: 14px; background: #071022; }
    .pf-page.portfolio-v2 .pf-tab { padding: 11px 8px; border-color: transparent; background: transparent; }

    /* Realized metrics stack. */
    .pf-page.portfolio-v2 .pv-kpis--realized { grid-template-columns: minmax(0, 1fr); }
    .pf-page.portfolio-v2 .pv-kpis--realized .pv-kpi + .pv-kpi { border-left: 0; border-top: 1px solid #22345a; }

    /* Section bars: "Drafts" over "Not yet monitoring"; the slots pill drops below the band. */
    .pf-page.portfolio-v2 .pv-section > .pv-section-head { flex-wrap: nowrap; padding: 8px 12px; gap: 10px; }
    .pf-page.portfolio-v2 .pv-section-title { min-width: 0; font-size: 19px; }
    .pf-page.portfolio-v2 .pv-head-pill { padding: 5px 11px; font-size: 12.5px; white-space: nowrap; }
    .pf-page.portfolio-v2 .pv-title-sep { display: none; }
    .pf-page.portfolio-v2 .pv-title-sub { display: block; font-size: 12.5px; font-weight: 600; color: #3a2a05; }
    .pf-page.portfolio-v2 .pv-section--positions .pv-slots { position: absolute; top: calc(100% + 12px); right: 14px; }
    .pf-page.portfolio-v2 .pv-section--positions:has(.pv-slots) > .pv-section-body { padding-top: 56px; }
    /* The global phone cap (max-width: 100%) would squeeze the tip to the pill's width; pin it to the right edge. */
    .pf-page.portfolio-v2 .pv-section--positions .pv-slots-tip { left: auto; right: 0; width: min(300px, calc(100vw - 3rem)); max-width: none !important; }

    /* Draft: name, then Mark ready across the row, then Open / Edit / Archive. */
    .pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft { flex-direction: column; align-items: stretch; }
    .pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
    .pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-add-btn { order: -1; grid-column: 1 / -1; min-height: 50px; }
    .pf-page.portfolio-v2 .pf-drafts--v2 .pf-draft-actions .pf-mini-btn { min-height: 46px; }

    /* Cards: Manage across the row, then the other actions two to a row. */
    .pf-page.portfolio-v2 .pv-grid .pf-card { min-height: 0; }
    .pf-page.portfolio-v2 .pv-grid .pf-right .pf-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .pf-page.portfolio-v2 .pv-grid .pf-right .pf-actions .pf-mini-btn { min-height: 46px; }
    .pf-page.portfolio-v2 .pv-grid .pf-right .pf-actions .pf-mini-btn.primary { grid-column: 1 / -1; min-height: 50px; }
    .pf-page.portfolio-v2 .pv-grid .pf-right .pf-actions .pf-mini-btn:last-child:nth-child(even) { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) {
    .pf-page.portfolio-v2 .pf-tab { transition: none; }
}

/* "How outside investments work" guide (2026-10-20), above the outside-investments card. */
.pf-page.portfolio-v2 .pf-guide { margin-top: -2rem; margin-bottom: 18px; }

@media (max-width: 768px) {
    /* The phone hero has no spare art below its text, so the guide keeps its normal place there. */
    .pf-page.portfolio-v2 .pf-guide { margin-top: 0; }
}

/* Active position actions (owner, 2026-10-21): the three main destinations (Monitor & Analyze, Market Intelligence, Data
   Room) are gold and first; Reports, Memo Insights, Edit Investment and Record a sale sit beneath as smaller house-brown
   buttons; Archive stays red. Some are links (they open a page), styled the same as the buttons. */
.pf-page.portfolio-v2 .pf-actions--active { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
.pf-page.portfolio-v2 .pf-actions-main,
.pf-page.portfolio-v2 .pf-actions-more { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 8px; }
.pf-page.portfolio-v2 a.pf-mini-btn { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.pf-page.portfolio-v2 a.pf-mini-btn:hover { text-decoration: none; }
.pf-page.portfolio-v2 .pf-mini-btn.pf-mini-btn--brown {
    min-height: 34px;
    padding: 6px 14px;
    border: 1px solid #5a4317;
    border-radius: 9px;
    background: #33250e;
    color: #f0c987;
    font-size: 13px;
}
.pf-page.portfolio-v2 .pf-mini-btn.pf-mini-btn--brown:hover:not(:disabled) { border-color: #E3B651; background: #3d2c10; color: #ffe49a; }
.pf-page.portfolio-v2 .pf-mini-btn.pf-mini-btn--sm.danger { min-height: 34px; padding: 6px 14px; border-radius: 9px; font-size: 13px; }

@media (max-width: 768px) {
    /* Phones: each gold destination across the row, then the smaller buttons two to a row. */
    .pf-page.portfolio-v2 .pv-grid .pf-right .pf-actions.pf-actions--active { display: flex; }
    .pf-page.portfolio-v2 .pf-actions-main { display: grid; grid-template-columns: minmax(0, 1fr); }
    .pf-page.portfolio-v2 .pf-actions-more { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    /* The older card rule spans an even-numbered last button; in this two-column row only an odd one should span. */
    .pf-page.portfolio-v2 .pv-grid .pf-right .pf-actions .pf-actions-more > .pf-mini-btn:last-child:nth-child(even) { grid-column: auto; }
    .pf-page.portfolio-v2 .pf-actions-more > :last-child:nth-child(odd) { grid-column: 1 / -1; }
}

/* The invested amount with its Edit button beside it (outside investments). */
.pf-page.portfolio-v2 .pf-amount-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
