:root {
    --ink: #102a43;
    --muted: #5f7486;
    --line: #cfe0eb;
    --surface: #ffffff;
    --canvas: #eef6fa;
    --blue: #1597c8;
    --blue-dark: #0e648f;
    --blue-soft: #dff3fb;
    --blue-pale: #eff9fc;
    --green: #1f7a55;
    --green-soft: #e6f7ef;
    --red: #aa3540;
    --red-soft: #fff0f1;
    --amber: #8d651c;
    --amber-soft: #fff7df;
    --shadow: 0 14px 36px rgba(16, 42, 67, .10);
}
* { box-sizing: border-box; }
html { min-height: 100%; background: var(--canvas); }
body { margin: 0; min-height: 100vh; color: var(--ink); background: linear-gradient(180deg, #eaf6fb 0, #f9fcfd 360px, var(--canvas) 100%); font-family: "Segoe UI", Arial, sans-serif; }
a { color: var(--blue-dark); text-decoration: none; }
a:hover { text-decoration: underline; }
.topbar { min-height: 76px; padding: 0 4vw; display: flex; align-items: center; justify-content: space-between; gap: 24px; background: rgba(255,255,255,.94); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 10; backdrop-filter: blur(12px); }
.brand { display: flex; align-items: center; gap: 12px; color: var(--ink); text-decoration: none; }
.brand:hover { text-decoration: none; }
.brand strong, .brand small { display: block; }
.brand strong { letter-spacing: .02em; font-size: 18px; }
.brand small { color: var(--muted); font-size: 11px; margin-top: 2px; }
.delta-mark { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; color: white; font-weight: 800; font-size: 25px; background: linear-gradient(145deg, #2998ea, #135892); box-shadow: 0 8px 18px rgba(21, 92, 150, .25); }
.nav-links { display: flex; align-items: center; gap: 20px; font-size: 14px; font-weight: 600; }
.nav-links a, .link-button { color: var(--ink); }
.inline-form { display: inline; margin: 0; }
.link-button { border: 0; background: transparent; font: inherit; cursor: pointer; padding: 0; }
.link-button:hover { color: var(--blue); text-decoration: underline; }
.page-shell { width: min(1460px, 92vw); margin: 34px auto 70px; }
.footer { padding: 24px; text-align: center; color: var(--muted); font-size: 12px; }
.page-header { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 16px 0 24px; }
h1, h2, h3 { margin-top: 0; }
h1 { font-size: clamp(28px, 4vw, 44px); line-height: 1.05; margin-bottom: 10px; letter-spacing: -.035em; }
h2 { font-size: 21px; margin-bottom: 8px; }
h3 { font-size: 17px; }
p { color: var(--muted); line-height: 1.55; }
.eyebrow { color: var(--blue); text-transform: uppercase; letter-spacing: .16em; font-size: 11px; font-weight: 800; margin-bottom: 8px; }
.panel { background: var(--surface); border: 1px solid var(--line); border-radius: 18px; padding: 24px; box-shadow: var(--shadow); margin-bottom: 24px; }
.narrow-panel { max-width: 620px; }
.form-panel { max-width: 940px; }
.panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.panel-heading p { margin: 0; }
.button { display: inline-flex; align-items: center; justify-content: center; border: 1px solid #a9c8df; color: var(--ink); background: #e6f5ff; padding: 10px 16px; border-radius: 9px; font-weight: 700; font-size: 14px; cursor: pointer; text-decoration: none; white-space: nowrap; }
.button:hover { background: #d7efff; text-decoration: none; }
.button-primary { background: #cfeeff; border-color: #83bee6; color: #124f7c; }
.button-primary:hover { background: #bfe7ff; }
.button-small { padding: 7px 11px; font-size: 12px; }
.button-success { background: var(--green-soft); border-color: #9bd2b9; color: var(--green); }
.button-danger { background: var(--red-soft); border-color: #ebb4b8; color: var(--red); }
.button-row { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.button-row form { margin: 0; }
.flash-stack { margin-bottom: 18px; }
.flash { border-radius: 11px; padding: 13px 16px; border: 1px solid var(--line); background: white; margin-bottom: 8px; }
.flash-success { background: var(--green-soft); border-color: #a5d7c1; color: #175e43; }
.flash-danger { background: var(--red-soft); border-color: #efb8bd; color: #8c2631; }
.flash-warning { background: #fff7df; border-color: #e7c96d; color: #6d5412; }
.auth-card { width: min(520px, 94vw); margin: 7vh auto; padding: 34px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.97); box-shadow: var(--shadow); }
.auth-card-wide { width: min(820px, 94vw); }
.stack-form { display: grid; gap: 16px; margin-top: 24px; }
.compact-form { max-width: 330px; }
.stack-form label { display: grid; gap: 7px; color: #263b51; font-weight: 700; font-size: 13px; }
.stack-form label small, td small { display: block; color: var(--muted); font-weight: 400; margin-top: 4px; }
input, select, textarea { width: 100%; border: 1px solid #b8cddd; border-radius: 9px; background: white; padding: 11px 12px; color: var(--ink); font: inherit; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(31,120,193,.16); border-color: var(--blue); }
input[type="checkbox"] { width: auto; }
.check-row { display: flex !important; align-items: center; gap: 8px !important; font-weight: 500 !important; }
.field-error { color: var(--red); font-size: 13px; }
.mfa-grid { display: grid; grid-template-columns: 1fr 260px; gap: 35px; align-items: center; }
.qr-panel { padding: 15px; background: white; border: 1px solid var(--line); border-radius: 16px; }
.qr-panel img { display: block; width: 100%; }
.instruction-list { padding-left: 20px; color: var(--muted); line-height: 1.6; }
.muted { color: var(--muted); }
code { background: #eef4f8; padding: 3px 6px; border-radius: 5px; font-family: Consolas, monospace; word-break: break-all; }
.hash { font-size: 11px; }
.details { display: block; max-width: 360px; white-space: normal; font-size: 10px; }
.subnav { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 25px; padding: 7px; background: rgba(255,255,255,.85); border: 1px solid var(--line); border-radius: 12px; width: fit-content; }
.subnav a { padding: 8px 11px; border-radius: 8px; font-size: 13px; font-weight: 700; color: #31516d; }
.subnav a:hover { background: var(--blue-pale); text-decoration: none; }
.stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 24px; }
.stat-card { background: var(--surface); border: 1px solid var(--line); border-radius: 16px; padding: 20px; box-shadow: var(--shadow); }
.stat-card span { display: block; color: var(--muted); font-size: 13px; }
.stat-card strong { display: block; margin-top: 7px; font-size: 34px; }
.two-column { display: grid; grid-template-columns: minmax(300px, 420px) minmax(500px, 1fr); gap: 24px; align-items: start; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.span-2 { grid-column: 1 / -1; }
.file-control { padding: 17px; border-radius: 12px; background: var(--blue-pale); border: 1px dashed #8ebfe0; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: 13px; }
th, td { padding: 13px 12px; border-bottom: 1px solid #e6eef5; text-align: left; vertical-align: middle; }
th { color: #63758a; text-transform: uppercase; letter-spacing: .06em; font-size: 10px; white-space: nowrap; }
tbody tr:hover { background: #f9fcfe; }
.status, .badge, .pill { display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 8px; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.status-draft { background: var(--amber-soft); color: var(--amber); }
.status-published { background: var(--green-soft); color: var(--green); }
.status-superseded { background: #edf0f4; color: #596879; }
.status-rejected { background: var(--red-soft); color: var(--red); }
.badge-general { background: var(--blue-soft); color: var(--blue-dark); }
.badge-investor { background: #ece9ff; color: #594ca1; }
.badge-internal { background: var(--red-soft); color: var(--red); }
.account-strip { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-bottom: 24px; padding: 14px 17px; border: 1px solid var(--line); background: rgba(255,255,255,.75); border-radius: 13px; }
.pill { text-transform: none; background: var(--blue-soft); color: var(--blue-dark); }
.document-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.document-card { display: flex; flex-direction: column; min-height: 225px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(180deg, white, #fbfdff); }
.document-card p { font-size: 13px; flex: 1; }
.document-meta { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 11px; margin-bottom: 15px; }
.document-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-top: 12px; border-top: 1px solid var(--line); font-size: 12px; }
.filter-bar { display: grid; grid-template-columns: minmax(220px, 2fr) minmax(180px, 1fr) minmax(180px, 1fr) auto auto; gap: 10px; align-items: center; margin-bottom: 20px; }
.archive-check { white-space: nowrap; }
.empty-state { padding: 34px !important; text-align: center !important; color: var(--muted); }
.credential-box { margin-bottom: 24px; padding: 18px; border: 1px solid #e1bf75; border-radius: 13px; background: #fff9e8; display: grid; gap: 7px; }
.credential-box code { font-size: 15px; }
@media (max-width: 1100px) {
    .document-grid { grid-template-columns: repeat(2, 1fr); }
    .two-column { grid-template-columns: 1fr; }
    .stat-grid { grid-template-columns: repeat(2, 1fr); }
    .filter-bar { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
    .topbar { align-items: flex-start; padding-top: 15px; padding-bottom: 15px; position: static; }
    .nav-links { justify-content: flex-end; flex-wrap: wrap; gap: 10px 14px; }
    .page-shell { width: min(94vw, 1460px); margin-top: 22px; }
    .page-header { align-items: flex-start; flex-direction: column; }
    .mfa-grid, .form-grid { grid-template-columns: 1fr; }
    .span-2 { grid-column: auto; }
    .qr-panel { width: 240px; }
    .document-grid, .stat-grid, .filter-bar { grid-template-columns: 1fr; }
    .panel, .auth-card { padding: 20px; }
}

/* Build 0.7.32: Contract Note address assistance and controlled NAV updates */
.contract-note-assistant {
    display: grid;
    gap: 12px;
    margin: 18px 0 24px;
    padding: 16px;
    border: 1px solid #b9a9eb;
    border-radius: 14px;
    background: #f7f4ff;
}
.contract-note-assistant p { margin: 5px 0 0; font-size: 13px; }
.contract-note-drop-zone { min-height: 140px; padding: 18px; }
.contract-note-result { color: var(--muted); font-size: 13px; line-height: 1.5; }
.contract-note-success { color: var(--green); font-weight: 650; }
.contract-note-hint { display: grid; gap: 6px; color: #263b51; font-weight: 700; }
.contract-note-hint textarea { width: 100%; resize: vertical; background: #fff; }
.address-fields {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
}
.address-fields legend { padding: 0 7px; color: #263b51; font-size: 13px; font-weight: 800; }
.data-source-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 20px;
}
.data-source-summary div { padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: #f8fbfd; }
.data-source-summary span { display: block; margin-bottom: 6px; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; }
.data-source-summary strong { overflow-wrap: anywhere; }
.compact-nav-form { max-width: 560px; }
.safe-write-note { display: grid; gap: 4px; padding: 13px; border: 1px solid #a5d7c1; border-radius: 11px; background: var(--green-soft); color: #175e43; font-size: 13px; }
.investor-data-management-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 24px;
    align-items: start;
}
.investor-data-management-panel { max-width: none; margin: 0; }
.investor-data-management-grid .data-source-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.capital-activity-form { max-width: none; }
.capital-activity-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.capital-activity-grid label { min-width: 0; }
.contract-note-data-assistant {
    display: grid;
    gap: 12px;
    margin: 8px 0 22px;
    padding: 16px;
    border: 1px solid #9fc9dd;
    border-radius: 14px;
    background: #eff8fc;
}
.contract-note-data-assistant p { margin: 5px 0 0; font-size: 13px; }
.contract-note-data-drop-zone { min-height: 130px; padding: 18px; }
.contract-note-data-assistant .contract-note-result { min-height: 20px; }
@media (max-width: 1100px) { .investor-data-management-grid { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .data-source-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .data-source-summary { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .capital-activity-grid { grid-template-columns: 1fr; } }

/* Build 0.7.33: investor-specific holdings dashboard */
.holdings-panel {
    margin-bottom: 24px;
    padding: 24px;
    border: 1px solid #a8c9e3;
    border-radius: 18px;
    background: linear-gradient(145deg, #ffffff, #f5faff);
    box-shadow: var(--shadow);
}
.holdings-heading { display: flex; justify-content: space-between; gap: 24px; align-items: start; margin-bottom: 18px; }
.holdings-heading p { margin: 0; }
.dashboard-section-heading { margin: 0; color: var(--ink); font-size: 28px; font-weight: 700; }
.holdings-position-date { color: #24384d; font-size: 17px; font-weight: 700; }
.holdings-as-of { display: grid; gap: 5px; min-width: 260px; text-align: right; }
.holdings-as-of span { color: var(--muted); font-size: 13px; }
.dashboard-investor-identity { font-size: 18px; }
.holdings-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(245px, .9fr);
    gap: 12px;
    align-items: stretch;
    width: 100%;
    max-width: none;
}
.investor-metrics-frame {
    padding: 14px;
    border: 2px solid #cbd6df;
    border-radius: 18px;
    background: rgba(255,255,255,.72);
}
.investor-frame-heading { display: flex; justify-content: space-between; gap: 20px; align-items: start; min-height: 112px; margin-bottom: 12px; }
.investor-frame-heading .dashboard-section-heading { margin-bottom: 5px; }
.investor-frame-heading p { margin: 0; }
.holdings-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.holding-metric {
    min-height: 61px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 12px 14px;
    border: 1px solid #d7e1e9;
    border-radius: 15px;
    background: #f2f4f6;
}
.holding-metric-current-value { background: #e3e9ef; border-color: #becbd6; }
.holding-metric-annualised-return { background: #e2f3fb; border-color: #8fc8df; }
.holding-metric span { color: #283644; font-weight: 700; }
.holding-metric strong { font-size: 20px; text-align: right; white-space: nowrap; }
.fund-performance-frame {
    padding: 14px;
    border: 2px solid #8dbcf0;
    border-radius: 18px;
    background: #eef5ff;
}
.fund-performance-heading { min-height: 112px; margin-bottom: 12px; }
.fund-performance-frame .dashboard-section-heading { margin-bottom: 5px; }
.fund-performance-heading .holdings-position-date { margin: 0; }
.fund-performance-metrics { display: grid; grid-template-columns: 1fr; gap: 10px; }
.fund-performance-metric { border-color: #9fc9ea; background: #e8f4ff; }
.fund-performance-metric span { color: #174d78; }
.fund-performance-diagnostic { max-width: 900px; margin-top: 12px; }
.dashboard-document-links {
    width: 100%;
    margin: 0 0 24px;
    padding: 0;
}
.dashboard-document-links > .dashboard-section-heading { margin-bottom: 12px; }
.dashboard-document-tabs { width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 12px; }
.dashboard-document-links p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.investor-transactions-panel { width: 100%; }
.investor-transactions-panel .panel-heading { margin-bottom: 14px; }
.investor-transactions-table { min-width: 760px; }
.investor-transactions-table th:nth-child(n+4),
.investor-transactions-table td.numeric-cell { text-align: right; }
.investor-transactions-table th,
.investor-transactions-table td { white-space: nowrap; }
.transaction-redemption-value { color: var(--red); font-weight: 700; }
.investor-transactions-diagnostic { margin-top: 12px; margin-bottom: 0; }
.metric-positive { color: var(--green); }
.metric-negative { color: var(--red); }
.metric-neutral { color: var(--ink); }
.holdings-unavailable { padding: 22px; border: 1px solid #e1bf75; border-radius: 12px; background: #fff9e8; color: #6d5412; }
.holdings-admin-diagnostic { margin-bottom: 14px; padding: 12px 14px; border: 1px solid #e1bf75; border-radius: 10px; background: #fff9e8; color: #6d5412; font-size: 13px; }
.holdings-unavailable + .holdings-admin-diagnostic { margin-top: 12px; margin-bottom: 0; }
@media (max-width: 760px) {
    .holdings-heading { display: grid; }
    .investor-frame-heading { display: grid; }
    .investor-frame-heading,
    .fund-performance-heading { min-height: 0; }
    .holdings-as-of { min-width: 0; text-align: left; }
    .holdings-dashboard-grid { grid-template-columns: 1fr; }
    .holdings-metrics { grid-template-columns: 1fr; }
    .holding-metric { align-items: flex-start; }
    .dashboard-document-tabs { grid-template-columns: 1fr; }
}

/* Admin document status batches and per-document download controls */
.bulk-status-controls {
    display: flex;
    align-items: end;
    gap: 10px;
    flex-wrap: wrap;
    margin: 0 0 14px;
    padding: 12px;
    border: 1px solid #b9d7eb;
    border-radius: 11px;
    background: #f2f9fe;
}
.bulk-status-controls label,
.compact-permission-form label { display: grid; gap: 5px; font-weight: 700; }
.bulk-status-controls small { color: var(--muted); }
.selection-column { width: 82px; }
.compact-permission-form {
    display: grid;
    grid-template-columns: minmax(130px, 1fr) auto;
    align-items: end;
    gap: 8px;
    margin-bottom: 9px;
}
.compact-permission-form select { min-width: 0; width: 100%; }
@media (max-width: 760px) {
    .compact-permission-form { grid-template-columns: 1fr; }
}

/* Active navigation and administration usability */
.nav-links a { padding: 10px 13px; border-radius: 9px; }
.nav-links a.active { background: var(--blue-dark); color: white; box-shadow: 0 6px 16px rgba(18, 79, 124, .22); text-decoration: none; }
.subnav a.active { background: var(--blue-dark); color: white; box-shadow: 0 5px 13px rgba(18, 79, 124, .18); }
.table-primary-link { display: inline-block; color: var(--blue-dark); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.rename-form { display: grid; grid-template-columns: minmax(210px, 1fr) auto; gap: 8px; align-items: center; min-width: 360px; }
.rename-form label { margin: 0; }
.rename-form input { padding: 8px 10px; font-weight: 700; }
.investor-detail-grid { display: grid; grid-template-columns: minmax(280px, 360px) minmax(600px, 1fr); gap: 24px; align-items: start; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 1050px) { .investor-detail-grid { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .rename-form { grid-template-columns: 1fr; min-width: 240px; } .nav-links a { padding: 8px 10px; } }

/* Build 0.3: separated admin and investor experiences */
.preview-banner { display: flex; align-items: center; justify-content: center; gap: 10px 18px; flex-wrap: wrap; padding: 10px 4vw; background: #fff4cf; border-bottom: 1px solid #e4c96e; color: #664d0e; font-size: 13px; }
.preview-banner span { color: #796321; }
.preview-banner a { font-weight: 800; }
.return-admin { border: 1px solid #9bbbd2; }
.workspace-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-bottom: 24px; }
.workspace-card { position: relative; min-height: 260px; padding: 26px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(180deg, #fff, #f8fcff); box-shadow: var(--shadow); overflow: hidden; }
.workspace-card h2 { font-size: 25px; padding-right: 44px; }
.workspace-card p { min-height: 82px; }
.workspace-number { position: absolute; right: 20px; top: 17px; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--blue-dark); font-size: 22px; font-weight: 800; }
.stat-card small { display: block; color: var(--muted); margin-top: 7px; }
.status-word { font-size: 22px !important; }
.compact-filter { grid-template-columns: minmax(280px, 2fr) minmax(170px, 1fr) auto; }
.equal-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.investors-layout { grid-template-columns: minmax(300px, 390px) minmax(700px, 1fr); }
.profile-form label { display: grid; gap: 7px; color: #263b51; font-weight: 700; font-size: 13px; }
.invite-form { margin-top: 0; }
.section-heading { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--line); }
.profile-summary-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin-bottom: 24px; }
.profile-summary-card { padding: 19px; border: 1px solid var(--line); border-radius: 15px; background: white; box-shadow: var(--shadow); }
.profile-summary-card span { display: block; color: var(--muted); font-size: 12px; margin-bottom: 7px; }
.profile-summary-card strong { display: block; overflow-wrap: anywhere; }
.mfa-change-panel { max-width: 850px; }
.cancel-form { margin-top: 14px; }
.instruction-box { padding: 14px 16px; border: 1px solid #a9cfe8; border-radius: 12px; background: var(--blue-pale); }
.activation-grid { grid-template-columns: 1fr 280px; align-items: start; }
.small-text { font-size: 12px; }
.mock-form { display: grid; gap: 15px; margin-top: 22px; }
.mock-form label { display: grid; gap: 7px; color: #263b51; font-weight: 700; font-size: 13px; }
.preview-disabled { opacity: .8; }
.document-identity { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 14px; margin-bottom: 18px; border: 1px solid var(--line); border-radius: 12px; background: var(--blue-pale); }
.button[disabled] { opacity: .55; cursor: not-allowed; }
@media (max-width: 1150px) {
    .workspace-grid { grid-template-columns: 1fr; }
    .workspace-card { min-height: 0; }
    .workspace-card p { min-height: 0; }
    .profile-summary-grid { grid-template-columns: repeat(2, 1fr); }
    .equal-columns, .investors-layout { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .preview-banner { justify-content: flex-start; }
    .profile-summary-grid { grid-template-columns: 1fr; }
    .activation-grid { grid-template-columns: 1fr; }
    .compact-filter { grid-template-columns: 1fr; }
}

/* Build 0.4: editable invitation drafts and visible email configuration */
.email-envelope { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.email-envelope > div { padding: 15px 17px; border: 1px solid var(--line); border-radius: 12px; background: var(--blue-pale); }
.email-envelope span { display: block; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 6px; }
.email-envelope strong { overflow-wrap: anywhere; }
.invitation-draft-form textarea { min-height: 520px; font-family: "Segoe UI", Arial, sans-serif; line-height: 1.55; resize: vertical; }
.invitation-actions { margin-top: 4px; }
.manual-invitation-panel { display: grid; gap: 20px; }
.manual-invitation-panel textarea { min-height: 430px; font-family: "Segoe UI", Arial, sans-serif; line-height: 1.55; resize: vertical; }
.copy-field-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; }
.copy-status { color: var(--green); font-size: 13px; font-weight: 700; }
.config-block { margin: 0 0 18px; padding: 18px; overflow-x: auto; border-radius: 12px; border: 1px solid #c6d9e8; background: #eef4f8; color: #18354d; font: 13px/1.6 Consolas, monospace; }
.email-summary-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1000px) { .email-summary-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) { .email-envelope, .email-summary-grid, .copy-field-row { grid-template-columns: 1fr; } .invitation-draft-form textarea, .manual-invitation-panel textarea { min-height: 420px; } }


/* Build 0.5: consistent Back control and investor document menus */
.back-row { display: flex; align-items: center; margin: 0 0 12px; }
.back-button { min-width: 92px; background: white; border-color: #a9c8df; }
.button-large { width: 100%; min-height: 48px; font-size: 15px; }
.portal-menu-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-bottom: 26px; }
.portal-menu-card { position: relative; display: flex; flex-direction: column; gap: 18px; min-height: 310px; padding: 28px; border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(180deg, #ffffff, #f8fcff); box-shadow: var(--shadow); overflow: hidden; }
.portal-menu-card > div:nth-child(2) { flex: 1; }
.portal-menu-card h2 { font-size: 28px; margin-bottom: 10px; }
.portal-menu-card p { font-size: 14px; }
.portal-menu-icon { position: absolute; top: 22px; right: 22px; width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; background: var(--blue-soft); color: var(--blue-dark); font-size: 25px; font-weight: 900; }
.portal-menu-card .eyebrow, .portal-menu-card h2 { padding-right: 62px; }
.fund-card { border-top: 5px solid #2b8ed3; }
.investor-card { border-top: 5px solid #6a63b8; }
.nested-menu-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.nested-menu-links a { display: flex; align-items: center; justify-content: center; min-height: 42px; padding: 9px 12px; border: 1px solid #b7cfe1; border-radius: 9px; background: white; font-weight: 750; text-align: center; }
.nested-menu-links a:hover { background: var(--blue-pale); text-decoration: none; }
/* Invisible row keeps both main portal buttons aligned while the right-hand shortcuts define the lower edge. */
.nested-menu-spacer { min-height: 42px; visibility: hidden; }
.grouped-filter { grid-template-columns: minmax(260px, 2fr) minmax(210px, 1fr) auto auto; }
@media (max-width: 900px) {
    .portal-menu-grid { grid-template-columns: 1fr; }
    .portal-menu-card { min-height: 0; }
}
@media (max-width: 760px) {
    .grouped-filter, .nested-menu-links { grid-template-columns: 1fr; }
    .portal-menu-card { padding: 23px; }
    .portal-menu-card h2 { font-size: 24px; }
}

/* Build 0.7: monthly investor report email import */
.import-table { width: 100%; }
.import-table th:nth-child(1), .import-table td:nth-child(1) { width: 58px; text-align: center; }
.import-table td { vertical-align: top; }
.import-table input, .import-table select { margin-bottom: 8px; }
.import-table input[type="checkbox"] { margin: 4px 0; }
.match-detail { max-width: 320px; }
.import-row-error { background: #fff8f8; }
.import-row-ignored { opacity: .82; }
.import-actions { margin-top: 20px; }
.import-actions small { max-width: 720px; }
.import-actions-top { margin-top: 0; margin-bottom: 16px; }

/* Build 0.7.2: interactive email-folder map */
.mail-folder-browser {
    border: 1px solid var(--border, #d6dde8);
    border-radius: 12px;
    max-height: 58vh;
    overflow: auto;
    background: #fff;
    margin: 1rem 0;
}
.mail-folder-row {
    --folder-depth: 0;
    width: 100%;
    display: grid;
    grid-template-columns: calc(var(--folder-depth) * 1.35rem) 1.5rem minmax(150px, 0.8fr) minmax(240px, 1.5fr) auto;
    gap: 0.55rem;
    align-items: center;
    text-align: left;
    border: 0;
    border-bottom: 1px solid #e8edf4;
    border-radius: 0;
    background: transparent;
    color: inherit;
    padding: 0.72rem 0.9rem;
    cursor: pointer;
    font: inherit;
}
.mail-folder-row:last-child { border-bottom: 0; }
.mail-folder-row:hover { background: #f3f8ff; }
.mail-folder-row.selected {
    background: #dceeff;
    outline: 2px solid #2074b9;
    outline-offset: -2px;
}
.mail-folder-icon { color: #2074b9; font-size: 1.05rem; }
.mail-folder-name { font-weight: 700; }
.mail-folder-path { color: #526273; overflow-wrap: anywhere; }
.mail-folder-counts { color: #66788b; font-size: 0.86rem; white-space: nowrap; }
.folder-selection-summary {
    padding: 0.8rem 1rem;
    border-radius: 10px;
    background: #f5f8fc;
    margin-bottom: 1rem;
    overflow-wrap: anywhere;
}
.selected-source-box { margin-top: 1rem; }
@media (max-width: 800px) {
    .mail-folder-row {
        grid-template-columns: calc(var(--folder-depth) * 0.75rem) 1.3rem minmax(130px, 1fr);
    }
    .mail-folder-path, .mail-folder-counts { grid-column: 3; white-space: normal; }
}


/* Build 0.7.3: clearer local-test import mode */
.local-import-mode-note { border-left: 4px solid #d59a2f; }

.scan-date-range {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(180px, 260px) 1fr;
    gap: 16px;
    align-items: end;
    margin: 18px 0;
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--soft-blue);
}
.scan-date-range label { display: block; font-weight: 800; margin-bottom: 7px; }
.scan-date-range input { width: 100%; }
.scan-date-range p { margin: 0 0 7px; color: var(--muted); }
@media (max-width: 820px) {
    .scan-date-range { grid-template-columns: 1fr; align-items: stretch; }
}

.scan-monitor-panel progress {
    width: 100%;
    height: 18px;
}
.scan-progress-wrap {
    display: grid;
    gap: 8px;
    margin: 12px 0 16px;
}
.button-warning {
    background: #fff4d6;
    border-color: #d89b16;
    color: #6b4700;
}

/* Build 0.7.8: explicit authenticator selection and activation diagnostics */
.authenticator-choice-fieldset {
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 16px;
    margin: 4px 0 18px;
    background: var(--soft-blue);
}
.authenticator-choice-fieldset legend {
    padding: 0 8px;
    font-weight: 800;
    color: var(--ink);
}
.authenticator-choice-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    gap: 12px;
}
.authenticator-choice {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 14px;
    border: 1px solid #b7cfe1;
    border-radius: 11px;
    background: #fff;
    cursor: pointer;
}
.authenticator-choice:hover { background: #f4f9ff; }
.authenticator-choice:has(input:checked) {
    border-color: #2074b9;
    box-shadow: 0 0 0 2px rgba(32, 116, 185, .14);
    background: #eef7ff;
}
.authenticator-choice input { margin-top: 3px; }
.authenticator-choice span { display: grid; gap: 4px; }
.authenticator-choice small { color: var(--muted); font-weight: 500; line-height: 1.35; }
.compact-choice-fieldset { padding: 12px; margin-bottom: 8px; }
.activation-code-panel { display: flex; flex-direction: column; justify-content: center; }
button:disabled, .button:disabled { opacity: .55; cursor: not-allowed; }
@media (max-width: 760px) {
    .authenticator-choice-grid { grid-template-columns: 1fr; }
}

/* Build 0.7.9: confirmed local invitation testing */
.local-invitation-confirmation { margin-top: 4px; padding: 14px 16px; border: 1px solid #e7c96d; border-radius: 10px; background: #fffaf0; align-items: flex-start !important; }
.local-invitation-confirmation input { margin-top: 3px; }

/* Build 0.7.11: per-investor bulk drag-and-drop and readable storage names */
.storage-location-badge {
    max-width: 420px;
    padding: 10px 13px;
    border: 1px solid #b9d2e5;
    border-radius: 10px;
    background: var(--blue-pale);
    color: var(--muted);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.bulk-upload-settings {
    display: grid;
    grid-template-columns: minmax(240px, 1.4fr) minmax(190px, .8fr) minmax(190px, .8fr) minmax(120px, .45fr);
    gap: 14px;
}
.bulk-upload-settings label,
.bulk-file-row label {
    display: grid;
    gap: 7px;
    color: #263b51;
    font-weight: 700;
    font-size: 13px;
}
.bulk-drop-zone {
    position: relative;
    display: grid;
    place-items: center;
    gap: 7px;
    min-height: 190px;
    padding: 28px;
    border: 2px dashed #81b5d7;
    border-radius: 16px;
    background: linear-gradient(180deg, #f9fdff, #eef8ff);
    text-align: center;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, transform .15s ease;
}
.bulk-drop-zone:hover,
.bulk-drop-zone:focus,
.bulk-drop-zone.drag-active {
    outline: none;
    border-color: #2074b9;
    background: #e7f5ff;
    transform: translateY(-1px);
}
.bulk-drop-zone input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.bulk-drop-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #d9eeff;
    color: #1767a4;
    font-size: 29px;
    font-weight: 900;
}
.bulk-drop-zone strong { font-size: 18px; color: var(--ink); }
.bulk-drop-zone span { color: var(--muted); font-size: 13px; }
.bulk-file-list {
    display: grid;
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: #fbfdff;
}
.bulk-file-row {
    display: grid;
    grid-template-columns: minmax(220px, .9fr) minmax(280px, 1.4fr) auto;
    gap: 14px;
    align-items: end;
    padding: 13px;
    border: 1px solid #d8e4ed;
    border-radius: 11px;
    background: white;
}
.bulk-file-identity { display: grid; gap: 5px; min-width: 0; }
.bulk-file-identity strong { overflow-wrap: anywhere; }
.bulk-file-identity small { color: var(--muted); }
.bulk-upload-actions { align-items: center; }
.bulk-upload-actions small { max-width: 650px; color: var(--muted); }
@media (max-width: 980px) {
    .bulk-upload-settings { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .bulk-file-row { grid-template-columns: 1fr; align-items: stretch; }
}
@media (max-width: 620px) {
    .bulk-upload-settings { grid-template-columns: 1fr; }
    .bulk-drop-zone { min-height: 155px; padding: 20px; }
}

/* Build 0.7.12: official DPF branding, local Ollama and file audit */
.brand-logo { width: 210px; height: 58px; object-fit: contain; object-position: left center; display: block; }
.brand-portal-name { padding-left: 12px; border-left: 1px solid var(--line); }
.audit-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 22px; }
.audit-summary-card { padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: white; box-shadow: var(--shadow); }
.audit-summary-card span { display: block; color: var(--muted); font-size: 12px; margin-bottom: 6px; }
.audit-summary-card strong { font-size: 24px; }
.severity-high { border-left: 5px solid var(--red); }
.severity-medium { border-left: 5px solid #d99a22; }
.severity-review, .severity-low { border-left: 5px solid var(--blue); }
.audit-reason { max-width: 520px; white-space: normal; }
.ai-panel { border: 1px solid #b9a9eb; background: #f7f4ff; }
.ai-status { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.ollama-models { max-height: 220px; overflow: auto; }
.logo-preview { max-width: 420px; width: 100%; height: auto; }
@media (max-width: 900px) {
    .brand-logo { width: 155px; height: 46px; }
    .brand-portal-name { display: none; }
    .audit-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) { .audit-summary-grid { grid-template-columns: 1fr; } }


/* Build 0.7.13: expanded portal branding and review-queue detail */
.topbar { min-height: 104px; }
.brand { min-width: 0; flex: 0 1 auto; }
.brand-logo { width: 315px; height: 88px; object-fit: contain; object-position: left center; flex: 0 0 auto; }
.brand-portal-name { min-width: 0; }
.brand-portal-name strong { font-size: 20px; white-space: nowrap; }
.review-queue-table { width: 100%; }
.review-queue-table td { vertical-align: top; }
@media (max-width: 1250px) {
    .topbar { align-items: flex-start; flex-wrap: wrap; padding-top: 8px; padding-bottom: 8px; }
    .brand-logo { width: 255px; height: 76px; }
    .brand-portal-name { display: block; }
    .brand-portal-name strong { font-size: 17px; }
    .nav-links { width: 100%; justify-content: flex-end; padding-bottom: 6px; }
}
@media (max-width: 760px) {
    .brand { gap: 8px; }
    .brand-logo { width: 185px; height: 62px; }
    .brand-portal-name { display: block; padding-left: 8px; }
    .brand-portal-name strong { font-size: 14px; white-space: normal; line-height: 1.15; }
    .brand-portal-name small { display: none; }
}

/* Build 0.7.15: File Audit actions */
.audit-page-actions {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}
.audit-page-actions form {
    margin: 0;
}
@media (max-width: 760px) {
    .audit-page-actions {
        width: 100%;
        justify-content: flex-start;
    }
}

/* Build 0.7.18: persistent investor identity and three fixed document sections */
.investor-context-bar {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin: 0 0 12px;
    padding: 14px 18px;
    border: 1px solid #b9d3e6;
    border-radius: 14px;
    background: linear-gradient(90deg, #eef8ff, #ffffff);
    box-shadow: 0 8px 24px rgba(26, 78, 117, .06);
}
.investor-context-bar > span { color: var(--muted); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.investor-context-bar > strong { font-size: 19px; }
.investor-context-bar small { color: var(--muted); font-size: 13px; }
.investor-section-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0 0 26px;
}
.investor-section-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 62px;
    padding: 12px 16px;
    border: 1px solid #a9c8df;
    border-radius: 14px;
    background: white;
    color: var(--ink);
    font-size: 15px;
    font-weight: 800;
    text-align: center;
    box-shadow: 0 8px 22px rgba(26, 78, 117, .06);
}
.investor-section-tab:hover { background: var(--blue-pale); text-decoration: none; }
.investor-section-tab.active { border-color: var(--blue); background: var(--blue); color: white; box-shadow: 0 10px 24px rgba(31, 120, 193, .22); }
.download-disabled { color: var(--muted); font-size: 12px; font-weight: 700; }
@media (max-width: 760px) {
    .investor-context-bar { align-items: flex-start; flex-direction: column; gap: 5px; }
    .investor-section-tabs { grid-template-columns: 1fr; }
    .investor-section-tab { min-height: 50px; }
}


/* Build 0.7.24: on-demand full-width split-screen previews and consistent light-blue controls */
.document-preview-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    align-items: start;
}
.document-preview-workspace.preview-active { grid-template-columns: minmax(0, 1.35fr) minmax(360px, .85fr); }
.document-preview-pane[hidden] { display: none; }
.document-list-panel { min-width: 0; margin-bottom: 0; }
.document-preview-pane {
    position: sticky;
    top: 100px;
    min-width: 0;
    margin-bottom: 0;
    padding: 18px;
}
.preview-pane-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.preview-pane-heading h2 { margin-bottom: 0; overflow-wrap: anywhere; }
.document-preview-frame {
    display: block;
    width: 100%;
    height: 680px;
    min-height: 0;
    max-height: 680px;
    border: 1px solid #b9d7eb;
    border-radius: 12px;
    background: #f6fbff;
}
.preview-help { margin: 10px 2px 0; font-size: 12px; }
.preview-selected { background: #eaf7ff !important; box-shadow: inset 4px 0 0 #62aee0; }
.admin-review-preview-workspace .document-list-panel { overflow: hidden; }
.document-preview-workspace .document-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.button,
.button-primary,
.button-success,
.button-danger,
.button-warning,
.back-button,
button.link-button,
.nav-links a.active,
.subnav a.active,
.investor-section-tab,
.investor-section-tab.active,
.nested-menu-links a {
    background: #dff1ff !important;
    border-color: #91c5e7 !important;
    color: #123f61 !important;
    box-shadow: none;
}
.button:hover,
.button-primary:hover,
.button-success:hover,
.button-danger:hover,
.button-warning:hover,
button.link-button:hover,
.nav-links a.active:hover,
.subnav a.active:hover,
.investor-section-tab:hover,
.investor-section-tab.active:hover,
.nested-menu-links a:hover {
    background: #c9eaff !important;
    color: #0e3857 !important;
    text-decoration: none;
}
button.link-button { padding: 9px 12px; border: 1px solid #91c5e7; border-radius: 9px; font-weight: 700; }
select {
    background-color: #e6f5ff !important;
    border-color: #9bc9e7 !important;
    color: #123f61;
}
select option { background: #e6f5ff; color: #123f61; }
.mail-folder-row { background: #eaf7ff; }
.mail-folder-row:hover, .mail-folder-row.selected { background: #d5efff; }

@media (max-width: 1120px) {
    .document-preview-workspace { grid-template-columns: 1fr; }
    .document-preview-pane { position: static; }
    .document-preview-frame { height: 560px; min-height: 0; max-height: 560px; }
}
@media (max-width: 760px) {
    .document-preview-workspace .document-grid { grid-template-columns: 1fr; }
    .document-preview-frame { height: 480px; min-height: 0; max-height: 480px; }
    .preview-pane-heading { flex-direction: column; }
}

/* Full-width Admin document workspaces keep the preview on the right and remove sideways table scrolling. */
.page-shell.admin-wide-main {
    width: calc(100vw - 32px);
    max-width: none;
    margin-left: 16px;
    margin-right: 16px;
}
.admin-wide-preview-workspace.preview-active {
    grid-template-columns: minmax(0, 3fr) minmax(380px, 2fr);
}
.admin-wide-preview-workspace > .document-preview-pane {
    grid-column: 2;
}
.admin-wide-preview-workspace:not(.preview-active) > .document-list-panel,
.admin-wide-preview-workspace .form-panel {
    max-width: none;
}
.admin-compact-document-workspace .table-wrap {
    max-width: 100%;
    overflow-x: hidden;
}
.admin-compact-document-workspace table,
.admin-compact-document-workspace .review-queue-table,
.admin-compact-document-workspace .import-table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
}
.admin-compact-document-workspace th,
.admin-compact-document-workspace td {
    min-width: 0;
    padding: 11px 9px;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
}
.admin-compact-document-workspace td small,
.admin-compact-document-workspace td strong,
.admin-compact-document-workspace td code {
    max-width: 100%;
    overflow-wrap: anywhere;
}
.admin-compact-document-workspace input,
.admin-compact-document-workspace select,
.admin-compact-document-workspace textarea {
    min-width: 0;
    max-width: 100%;
}
.admin-compact-document-workspace .button-row {
    align-items: flex-start;
}
.admin-review-preview-workspace .rename-form {
    grid-template-columns: minmax(0, 1fr) auto;
    min-width: 0;
}
.review-queue-table .selection-column { width: 7%; }
.review-queue-table .document-column { width: 27%; }
.review-queue-table .classification-column { width: 23%; }
.review-queue-table .review-details-column { width: 23%; }
.review-queue-table .actions-column { width: 20%; }
.general-documents-table .document-column { width: 31%; }
.general-documents-table .details-column { width: 24%; }
.general-documents-table .publication-column { width: 22%; }
.general-documents-table .actions-column { width: 23%; }
.admin-monthly-import-preview-workspace .import-table th:nth-child(1),
.admin-monthly-import-preview-workspace .import-table td:nth-child(1) { width: 5%; min-width: 0; }
.admin-monthly-import-preview-workspace .import-table th:nth-child(2) { width: 23%; min-width: 0; }
.admin-monthly-import-preview-workspace .import-table th:nth-child(3) { width: 19%; min-width: 0; }
.admin-monthly-import-preview-workspace .import-table th:nth-child(4) { width: 21%; min-width: 0; }
.admin-monthly-import-preview-workspace .import-table th:nth-child(5) { width: 15%; min-width: 0; }
.admin-monthly-import-preview-workspace .import-table th:nth-child(6) { width: 17%; min-width: 0; }

@media (max-width: 980px) {
    .admin-wide-preview-workspace.preview-active { grid-template-columns: minmax(0, 1fr); }
    .admin-wide-preview-workspace > .document-preview-pane { grid-column: 1; position: static; }
    .page-shell.admin-wide-main { width: min(94vw, 1460px); margin-left: auto; margin-right: auto; }
}
@media (max-width: 760px) {
    .admin-compact-document-workspace th,
    .admin-compact-document-workspace td { padding: 9px 5px; font-size: 11px; }
    .admin-compact-document-workspace .button { white-space: normal; padding: 7px 8px; }
    .admin-review-preview-workspace .rename-form { grid-template-columns: 1fr; min-width: 0; }
}

/* Build 0.7.46: larger dashboard identity/logo, contained address assistant, closeable previews */
.dashboard-investor-identity { font-size: 20px; }
.investor-context-bar > span { font-size: 14px; }
.investor-context-bar > strong { font-size: 21px; }
.investor-context-bar small { font-size: 15px; }

.brand-logo { width: 378px; height: 106px; }
.topbar { min-height: 122px; }

.preview-close-button {
    flex: 0 0 auto;
    max-width: 140px;
    white-space: normal;
    line-height: 1.2;
}

.investors-layout > .panel:first-child,
.contract-note-assistant,
.contract-note-assistant > * {
    min-width: 0;
    max-width: 100%;
}
.contract-note-assistant {
    width: 100%;
    overflow: hidden;
}
.contract-note-assistant p,
.contract-note-drop-zone strong,
.contract-note-drop-zone span {
    overflow-wrap: anywhere;
}
.contract-note-drop-zone { width: 100%; padding: 24px 16px; }
.contract-note-hint { width: 100%; }
.contract-note-hint textarea {
    width: 100%;
    min-height: 118px;
    resize: vertical;
    background: #fff;
    font-weight: 400;
    line-height: 1.45;
}
.contract-note-hint textarea::placeholder {
    color: #64758a;
    font-weight: 400;
    opacity: 1;
}
.contract-note-assistant > .button {
    width: 100%;
    min-width: 0;
    padding-left: 12px;
    padding-right: 12px;
    white-space: normal;
    line-height: 1.3;
    text-align: center;
}

@media (max-width: 1250px) {
    .brand-logo { width: 306px; height: 91px; }
}
@media (max-width: 760px) {
    .brand-logo { width: 222px; height: 74px; }
    .topbar { min-height: 90px; }
}

/* Build 0.7.47: complete register controls and exited-investor workflow */
.investor-register-lists {
    display: grid;
    gap: 24px;
    min-width: 0;
}
.investor-register-lists > .panel { min-width: 0; }
.exited-investors-panel { border-color: #c4cbd3; background: #fbfcfd; }
.investor-exited-indicator { vertical-align: middle; }
.exited-investor-check {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
}
.exited-investor-check small {
    grid-column: 2;
    color: var(--muted);
    font-weight: 400;
    line-height: 1.45;
}
.complete-register-filter {
    grid-template-columns: minmax(240px, 2fr) minmax(150px, .8fr) minmax(220px, 1.2fr) auto;
}
@media (max-width: 900px) {
    .complete-register-filter { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
    .complete-register-filter { grid-template-columns: 1fr; }
}

/* Build 0.7.80: Ocean Trust theme fingerprint PK-OT-0780 */
.brand-portal-name strong.login-brand-title { font-size: 23px; }
@media (max-width: 1250px) {
    .brand-portal-name strong.login-brand-title { font-size: 20px; }
}
@media (max-width: 760px) {
    .brand-portal-name strong.login-brand-title { font-size: 17px; }
}

.portal-data-launch-panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
    background: #eef8ff;
    border-color: #b9d9ed;
}

.portal-data-launch-panel h2,
.portal-data-launch-panel p { margin: 0; }
.portal-data-launch-panel p { margin-top: 5px; }

.portal-data-flow {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.portal-data-flow .panel {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin: 0;
}

.portal-data-flow h2,
.portal-data-flow p { margin: 0; }
.portal-data-flow .button { margin-top: auto; }

.portal-data-diff-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.portal-data-diff-grid > div {
    padding: 14px;
    border: 1px solid #c9dfed;
    border-radius: 10px;
    background: #f7fbfe;
}

.portal-data-diff-grid h3,
.portal-data-diff-grid p { margin: 0; }
.portal-data-diff-grid p { margin-top: 5px; overflow-wrap: anywhere; }

.portal-data-step-up-form,
.portal-data-restore-form {
    max-width: 720px;
}

@media (max-width: 900px) {
    .portal-data-flow { grid-template-columns: 1fr; }
    .portal-data-diff-grid { grid-template-columns: 1fr; }
    .portal-data-launch-panel { align-items: stretch; flex-direction: column; }
}
.theme-ocean-trust {
    --ink: #0b2742;
    --muted: #587086;
    --line: #c8dbe7;
    --surface: #ffffff;
    --canvas: #f3f8fb;
    --blue: #008dce;
    --blue-dark: #006aa5;
    --blue-soft: #dff3fc;
    --blue-pale: #eff9fd;
    --shadow: 0 12px 30px rgba(7, 61, 93, .10);
    background:
        radial-gradient(circle at 92% 8%, rgba(0, 157, 208, .10), transparent 27%),
        linear-gradient(180deg, #f7fcfe 0, #ffffff 360px, #f3f8fb 100%);
}
.theme-ocean-trust .topbar {
    background: rgba(255, 255, 255, .985);
    border-top: 7px solid #0097d5;
    border-bottom-color: #b8d8e8;
    box-shadow: 0 8px 24px rgba(7, 61, 93, .10);
}
.theme-ocean-trust .brand-portal-name { border-left-color: #88c9e4; }
.theme-ocean-trust .brand strong,
.theme-ocean-trust h1,
.theme-ocean-trust h2,
.theme-ocean-trust h3,
.theme-ocean-trust .dashboard-section-heading { color: #0b2742; }
.theme-ocean-trust .eyebrow { color: #008dce; }
.theme-ocean-trust .brand-portal-name strong.portal-login-brand-title { color: #003b70; font-size: 25px; }
@media (max-width: 1250px) {
    .theme-ocean-trust .brand-portal-name strong.portal-login-brand-title { font-size: 22px; }
}
@media (max-width: 760px) {
    .theme-ocean-trust .brand-portal-name strong.portal-login-brand-title { font-size: 19px; }
}

.theme-ocean-trust .panel,
.theme-ocean-trust .stat-card,
.theme-ocean-trust .audit-summary-card,
.theme-ocean-trust .workspace-card,
.theme-ocean-trust .portal-menu-card,
.theme-ocean-trust .document-card,
.theme-ocean-trust .auth-card {
    border-color: #bdd6e3;
    box-shadow: 0 12px 30px rgba(7, 61, 93, .10);
}
.theme-ocean-trust .panel,
.theme-ocean-trust .stat-card,
.theme-ocean-trust .audit-summary-card,
.theme-ocean-trust .auth-card { background: rgba(255, 255, 255, .985); }
.theme-ocean-trust .workspace-card,
.theme-ocean-trust .portal-menu-card,
.theme-ocean-trust .document-card { background: linear-gradient(180deg, #ffffff, #f5fbfe); }

.theme-ocean-trust .button,
.theme-ocean-trust .back-button,
.theme-ocean-trust .nested-menu-links a,
.theme-ocean-trust .investor-section-tab {
    background: #ffffff !important;
    border-color: #008dce !important;
    color: #006aa5 !important;
    box-shadow: 0 5px 14px rgba(0, 141, 206, .10);
}
.theme-ocean-trust .button-primary,
.theme-ocean-trust .investor-section-tab.active {
    background: #dff3fc !important;
    border-color: #007fbe !important;
    color: #005b8f !important;
}
.theme-ocean-trust .button:hover,
.theme-ocean-trust .button-primary:hover,
.theme-ocean-trust .back-button:hover,
.theme-ocean-trust .nested-menu-links a:hover,
.theme-ocean-trust .investor-section-tab:hover,
.theme-ocean-trust .investor-section-tab.active:hover {
    background: #cceefe !important;
    border-color: #006fae !important;
    color: #06476c !important;
    box-shadow: 0 7px 18px rgba(0, 141, 206, .17);
}
.theme-ocean-trust .button-success {
    background: var(--green-soft) !important;
    border-color: #79bd9d !important;
    color: var(--green) !important;
}
.theme-ocean-trust .button-warning {
    background: var(--amber-soft) !important;
    border-color: #d9b950 !important;
    color: #6d5412 !important;
}
.theme-ocean-trust .button-danger {
    background: var(--red-soft) !important;
    border-color: #df9da4 !important;
    color: var(--red) !important;
}
.theme-ocean-trust .topbar .nav-links a.active {
    background: transparent !important;
    border-color: transparent !important;
    border-radius: 0;
    color: #007fbe !important;
    box-shadow: inset 0 -4px 0 #008dce;
}
.theme-ocean-trust .topbar .nav-links a:hover {
    color: #007fbe;
    background: #ebf8fd;
    text-decoration: none;
}
.theme-ocean-trust .subnav {
    border-color: #acd1e2;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 5px 15px rgba(7, 61, 93, .06);
}
.theme-ocean-trust .subnav a.active {
    background: #dff3fc !important;
    border-color: #008dce !important;
    color: #005b8f !important;
}

.theme-ocean-trust input,
.theme-ocean-trust textarea {
    border-color: #9dc7db;
    background: #ffffff;
}
.theme-ocean-trust select,
.theme-ocean-trust select option {
    background-color: #eef9fd !important;
    border-color: #8abfd7 !important;
    color: #123d59;
}
.theme-ocean-trust input:focus,
.theme-ocean-trust select:focus,
.theme-ocean-trust textarea:focus {
    outline-color: rgba(0, 141, 206, .20);
    border-color: #008dce;
}

.theme-ocean-trust .data-source-summary div,
.theme-ocean-trust .folder-selection-summary,
.theme-ocean-trust .config-block,
.theme-ocean-trust .bulk-file-list {
    background: #edf8fc;
    border-color: #b4d5e4;
}
.theme-ocean-trust .file-control,
.theme-ocean-trust .bulk-drop-zone,
.theme-ocean-trust .document-preview-frame {
    background: linear-gradient(180deg, #ffffff, #eaf7fc);
    border-color: #42a9d4;
}
.theme-ocean-trust .bulk-drop-icon,
.theme-ocean-trust .portal-menu-icon,
.theme-ocean-trust .workspace-number {
    background: #d9f2fc;
    color: #007bb8;
}
.theme-ocean-trust .contract-note-assistant,
.theme-ocean-trust .ai-panel {
    border-color: #58afd2;
    background: #edf9fd;
}
.theme-ocean-trust .badge-investor { background: #dcf1f8; color: #155f7d; }
.theme-ocean-trust .fund-card { border-top-color: #008dce; }
.theme-ocean-trust .investor-card { border-top-color: #52b6d5; }

.theme-ocean-trust .investor-context-bar {
    border-color: #73bad5;
    background: linear-gradient(90deg, #dff3fc, #ffffff 68%);
    box-shadow: 0 8px 22px rgba(7, 61, 93, .08);
}
.theme-ocean-trust .holdings-panel {
    border-color: #5cafd1;
    background: linear-gradient(145deg, #ffffff, #edf8fc);
    box-shadow: 0 14px 34px rgba(7, 61, 93, .11);
}
.theme-ocean-trust .investor-metrics-frame {
    border-color: #aebfca;
    background: rgba(255, 255, 255, .96);
}
.theme-ocean-trust .holding-metric {
    border-color: #c6d2da;
    background: #f0f3f5;
}
.theme-ocean-trust .holding-metric-current-value {
    border-color: #6db8d6;
    background: #d8eff8;
}
.theme-ocean-trust .holding-metric-annualised-return {
    border-color: #6db8d6;
    background: #d8eff8;
}
.theme-ocean-trust .fund-performance-frame {
    border-color: #3ca2d0;
    background: linear-gradient(145deg, #e8f6fc, #dff2fb);
}
.theme-ocean-trust .fund-performance-metric {
    border-color: #75bad8;
    background: rgba(255, 255, 255, .62);
}
.theme-ocean-trust .fund-performance-metric span { color: #075f8d; }
.theme-ocean-trust .metric-positive { color: #13846c; }

.theme-ocean-trust th { color: #315f79; }
.theme-ocean-trust thead tr { background: #eaf6fb; }
.theme-ocean-trust th,
.theme-ocean-trust td { border-bottom-color: #d2e3eb; }
.theme-ocean-trust tbody tr:hover { background: #edf8fc; }
.theme-ocean-trust .preview-selected {
    background: #d9f1fb !important;
    box-shadow: inset 4px 0 0 #008dce;
}
.theme-ocean-trust .mail-folder-row { background: #edf8fc; }
.theme-ocean-trust .mail-folder-row:hover,
.theme-ocean-trust .mail-folder-row.selected { background: #d7eff9; }

@media (max-width: 760px) {
    .theme-ocean-trust .topbar { border-top-width: 5px; }
}

/* Build 0.7.57: fixed preview viewport and expandable investor data */
.theme-ocean-trust .dashboard-document-tabs .investor-section-tab {
    background: #087fba !important;
    border-color: #05689c !important;
    color: #ffffff !important;
    font-size: 17px;
    box-shadow: 0 8px 20px rgba(0, 91, 143, .20);
}
.theme-ocean-trust .dashboard-document-tabs .investor-section-tab:hover {
    background: #066a9e !important;
    border-color: #045783 !important;
    color: #ffffff !important;
}
.other-data-toggle { margin-top: 12px; min-width: 160px; }
.other-data-panel { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
.other-data-panel[hidden] { display: none; }
.other-data-metrics .holding-metric { min-height: 61px; }

/* Build 0.7.57: compact investor-data guidance and disclaimer */
.investor-data-explanations {
    max-width: none;
    margin: -8px 0 24px;
    padding: 11px 14px;
    border: 1px solid #b9d8e7;
    border-radius: 14px;
    background: #f4fbfe;
}
.investor-data-explanations h2 {
    margin: 0 0 7px;
    color: var(--ink);
    font-size: 16px;
}
.investor-data-explanations-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px 16px;
    margin: 0;
}
.investor-data-explanations-grid > div {
    padding-top: 4px;
    border-top: 1px solid #d8e8ef;
}
.investor-data-explanations-grid dt {
    margin: 0 0 2px;
    color: #27445a;
    font-size: 12px;
    font-weight: 800;
}
.investor-data-explanations-grid dd {
    margin: 0;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.28;
}
.investor-data-disclaimer {
    margin: 0 0 18px;
    padding: 11px 14px;
    border: 1px solid #b9d8e7;
    border-radius: 14px;
    background: #f4fbfe;
    color: #5d6b76;
    font-size: 11px;
    line-height: 1.45;
}
.investor-data-disclaimer h2 {
    margin: 0 0 7px;
    color: var(--ink);
    font-size: 16px;
}
.investor-data-disclaimer p { margin: 0 0 6px; }
.investor-data-disclaimer p:last-child { margin-bottom: 0; }
@media (max-width: 760px) {
    .investor-data-explanations-grid { grid-template-columns: 1fr; }
}

/* Build 0.7.60: Admin Review workspaces and Admin Input Work refinements */
.topbar-left { display: flex; align-items: center; gap: 22px; min-width: 0; }
.admin-workspace-shell {
    margin: 0 0 22px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}
.admin-workspace-title-row {
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
    position: relative;
    left: 50%;
    width: 100vw;
    min-height: 44px;
    margin-left: -50vw;
    border-bottom: 1px solid #c9dee9;
}
.admin-workspace-console-title {
    display: flex;
    align-items: center;
    padding: 13px 20px;
    color: #0b2742;
    font-size: 20px;
    font-weight: 800;
}
.admin-workspace-indicator {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) auto minmax(120px, 1fr);
    align-items: center;
    gap: 16px;
    width: 100%;
    min-width: 0;
    padding: 9px 4vw;
    border-left: 0;
}
.admin-workspace-indicator strong {
    grid-column: 2;
    color: #0b2742;
    font-size: 16px;
    letter-spacing: .035em;
}
.admin-workspace-indicator a {
    grid-column: 3;
    justify-self: end;
}
.admin-workspace-indicator-input { background: #f8dce8; }
.admin-workspace-indicator-review { background: #dff3fc; }
.admin-workspace-indicator-investors { background: #dff3fc; }
.admin-workspace-indicator-fund { background: #f8dce8; }
.admin-change-workspace-button {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 6px 13px;
    border: 1px solid #6e9eb7;
    border-radius: 9px;
    background: rgba(255,255,255,.88);
    color: #174f6e !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-decoration: none;
    box-shadow: 0 3px 9px rgba(19, 71, 100, .12);
}
.admin-change-workspace-button:hover { background: #fff; border-color: #1677a8; text-decoration: none; }

.admin-workspace-nav {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 12px;
    padding: 12px;
    background: #f6fbfd;
}
.admin-input-nav-left,
.admin-input-nav-right {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    align-content: start;
    min-width: 0;
}
.admin-input-nav-right {
    padding-left: 12px;
    border-left: 2px solid #bfd9e6;
}
.admin-workspace-nav a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 5px 10px;
    border: 1px solid #8fc2db;
    border-radius: 10px;
    background: #dff3fc;
    color: #075f8d;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
}
.admin-workspace-nav a:hover,
.admin-workspace-nav a.active {
    border-color: #007fbe;
    background: #c7eafa;
    color: #06476c;
    box-shadow: 0 5px 13px rgba(18, 79, 124, .14);
}

.admin-workspace-choice-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    max-width: 980px;
    margin: 24px auto 0;
}
.admin-workspace-choice-form { margin: 0; }
.admin-workspace-choice-button {
    width: 100%;
    min-height: 210px;
    padding: 32px;
    border: 2px solid transparent;
    border-radius: 20px;
    color: #0b2742;
    cursor: pointer;
    box-shadow: 0 14px 34px rgba(7, 61, 93, .12);
    text-align: left;
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.admin-workspace-choice-button:hover,
.admin-workspace-choice-button:focus-visible {
    transform: translateY(-2px);
    border-color: #008dce;
    box-shadow: 0 18px 40px rgba(7, 61, 93, .17);
}
.admin-workspace-choice-button strong {
    display: block;
    margin-bottom: 14px;
    font-size: 27px;
    letter-spacing: .025em;
}
.admin-workspace-choice-button span {
    display: block;
    color: #35576d;
    font-size: 14px;
    line-height: 1.5;
}
.admin-workspace-choice-review { background: #dff3fc; }
.admin-workspace-choice-input { background: #f8dce8; }
.admin-review-pending-panel {
    border-color: #a9d5e8;
    background: #f0f9fd;
}
.topbar-back-button {
    padding: 10px 0;
    color: #0b2742;
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
}
.topbar-home-button {
    padding: 10px 0;
    color: #0b2742;
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
    text-decoration: none;
}
.topbar-home-button:hover { color: #007fbe; text-decoration: underline; }
.portal-access-toggle-form { display: inline-flex; margin: 0; }
.portal-access-toggle {
    min-height: 34px;
    padding: 7px 11px;
    border: 1px solid;
    border-radius: 999px;
    font: 800 11px/1.1 "Segoe UI", Arial, sans-serif;
    letter-spacing: .035em;
    cursor: pointer;
    white-space: nowrap;
}
.portal-access-activated { border-color: #79bd9d; background: var(--green-soft); color: var(--green); }
.portal-access-restricted { border-color: #df9da4; background: var(--red-soft); color: var(--red); }
.portal-access-toggle:hover { filter: brightness(.97); box-shadow: 0 5px 14px rgba(16, 42, 67, .11); }
.portal-publication-reminder {
    margin-top: 14px;
    padding: 13px 15px;
    border: 1px solid #d9b950;
    border-radius: 11px;
    background: var(--amber-soft);
    color: #6d5412;
    line-height: 1.5;
}
.admin-review-workspace-nav,
.admin-review-mode-tabs {
    display: flex;
    justify-content: center;
    gap: 10px;
    padding: 11px;
    background: #f6fbfd;
}
.admin-review-workspace-nav a,
.admin-review-mode-tabs a {
    min-width: 180px;
    padding: 10px 18px;
    border: 1px solid #8fc2db;
    border-radius: 10px;
    background: #fff;
    color: #075f8d;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
}
.admin-review-workspace-nav a.active,
.admin-review-mode-tabs a.active,
.admin-review-workspace-nav a:hover,
.admin-review-mode-tabs a:hover { background: #c7eafa; border-color: #007fbe; text-decoration: none; }
.admin-review-mode-tabs { margin-bottom: 18px; border-radius: 12px; }
.admin-review-filter-form {
    display: grid;
    grid-template-columns: repeat(3, minmax(170px, 1fr)) auto;
    gap: 12px;
    align-items: end;
    margin-bottom: 18px;
    padding: 16px;
}
.admin-review-filter-form label { display: grid; gap: 6px; color: #263b51; font-size: 12px; font-weight: 800; }
.admin-review-document-columns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-items: start;
}
.admin-review-document-column { min-width: 0; padding: 14px; }
.admin-review-document-column .panel-heading { margin-bottom: 8px; }
.admin-review-document-column .panel-heading h2 { font-size: 17px; }
.admin-review-document-column th,
.admin-review-document-column td { padding: 8px 5px; font-size: 10px; white-space: normal; }
.admin-review-document-column th { font-size: 8px; }
.admin-review-document-table th:nth-child(1) { width: 27%; }
.admin-review-document-table th:nth-child(2) { width: 13%; }
.admin-review-document-table th:nth-child(3) { width: 18%; }
.admin-review-document-table th:nth-child(4) { width: 11%; }
.admin-review-document-table th:nth-child(5) { width: 31%; }
.admin-review-row-actions { display: grid; gap: 4px; }
.admin-review-row-actions form { margin: 0; }
.admin-review-row-actions .button { width: 100%; padding: 5px 6px; font-size: 9px; white-space: normal; text-align: center; }
.admin-review-document-columns.preview-active .document-preview-pane { display: block; grid-column: 1 / -1; position: static; }
.admin-fund-metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.admin-fund-metric-grid .metric-card {
    display: grid;
    gap: 8px;
    min-height: 150px;
    padding: 22px;
    border: 1px solid #c9dee9;
    border-radius: 16px;
    background: #fff;
    box-shadow: var(--shadow);
}
.admin-fund-metric-grid .metric-card span { color: var(--muted); font-size: 13px; font-weight: 700; }
.admin-fund-metric-grid .metric-card strong { color: #0b2742; font-size: 28px; }
.admin-fund-metric-grid .metric-card small { align-self: end; color: #738697; font-size: 10px; }
.admin-fund-metric-grid .tone-positive strong,
.metric-positive { color: var(--green); }
.admin-fund-metric-grid .tone-negative strong,
.metric-negative { color: var(--red); }
.workstream-completion-list {
    display: grid;
    gap: 8px;
    margin-top: 15px;
}
.workstream-completion-message {
    display: grid;
    gap: 3px;
    padding: 11px 13px;
    border: 1px solid #9fd2bc;
    border-radius: 10px;
    background: #e8f8f0;
    color: #175e43;
    font-size: 13px;
}
.workstream-completion-message span { line-height: 1.4; }

@media (max-width: 1120px) {
    .admin-workspace-nav { grid-template-columns: 1fr; }
    .admin-input-nav-right { padding: 12px 0 0; border-left: 0; border-top: 2px solid #bfd9e6; }
    .admin-review-document-columns { grid-template-columns: 1fr; }
    .admin-fund-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .admin-workspace-title-row { display: block; }
    .admin-workspace-indicator {
        grid-template-columns: 1fr auto;
        min-width: 0;
        border-top: 0;
        border-left: 0;
    }
    .admin-workspace-indicator > span { display: none; }
    .admin-workspace-indicator strong { grid-column: 1; }
    .admin-workspace-indicator a { grid-column: 2; }
    .topbar-left { align-items: flex-start; flex-direction: column; gap: 6px; }
    .admin-review-workspace-nav,
    .admin-review-mode-tabs { flex-direction: column; }
    .admin-review-workspace-nav a,
    .admin-review-mode-tabs a { min-width: 0; }
    .admin-review-filter-form,
    .admin-fund-metric-grid { grid-template-columns: 1fr; }
    .admin-input-nav-left,
    .admin-input-nav-right { grid-template-columns: 1fr; }
    .admin-workspace-choice-grid { grid-template-columns: 1fr; }
    .admin-workspace-choice-button { min-height: 150px; padding: 24px; }
    .admin-workspace-choice-button strong { font-size: 22px; }
}
