:root {
    --tal-ink: #10202a;
    --tal-ink-soft: #53616a;
    --tal-night: #0b1822;
    --tal-night-2: #112632;
    --tal-paper: #f4f1e9;
    --tal-surface: #ffffff;
    --tal-line: #dcded8;
    --tal-line-dark: rgba(255, 255, 255, .12);
    --tal-acid: #d7ff68;
    --tal-coral: #ff735d;
    --tal-sky: #8dd8e8;
    --tal-success: #4bd69f;
    --tal-shadow: 0 24px 70px rgba(7, 22, 31, .16);
    --tal-radius-sm: 10px;
    --tal-radius: 18px;
    --tal-radius-lg: 28px;
    --tal-sidebar-width: 286px;
}

/* Print-ready team development booklet entry point */
.tal-results-filter-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 14px;
    align-items: stretch;
}
.tal-results-filter-row .tal-results-filter { margin: 0; }
.tal-results-booklet-link {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 86px;
    padding: 14px 16px;
    border: 1px solid rgba(11, 24, 34, .12);
    border-radius: 18px;
    background: #0b1822;
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: 0 14px 32px rgba(11, 24, 34, .12);
}
.tal-results-booklet-link > i:first-child {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #caff4f;
    color: #0b1822;
}
.tal-results-booklet-link strong,
.tal-results-booklet-link small { display: block; }
.tal-results-booklet-link strong { font-size: 14px; }
.tal-results-booklet-link small { margin-top: 4px; color: #aebbc2; font-size: 11px; }
.tal-results-booklet-link > i:last-child { color: #caff4f; transition: transform .18s ease; }
.tal-results-booklet-link:hover > i:last-child { transform: translateX(3px); }

@media (max-width: 1050px) {
    .tal-results-filter-row { grid-template-columns: 1fr; }
}

/* Public research programme */
.tal-research-public { margin: 0; color: var(--tal-night, #0b1c26); background: #f5f2ea; font-family: "Inter", "Segoe UI", sans-serif; }
.tal-research-public .tal-public-nav { position: sticky; top: 0; z-index: 40; }
.tal-research-public main { overflow: hidden; }
.tal-research-public__hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(340px, .65fr); gap: clamp(32px, 6vw, 90px); align-items: center; min-height: calc(100vh - 82px); padding: clamp(70px, 10vw, 142px) max(5vw, calc((100vw - 1420px)/2)); background: radial-gradient(circle at 85% 22%, rgba(202,255,71,.2), transparent 25%), linear-gradient(135deg, #0b1c26 0 58%, #f5f2ea 58%); }
.tal-research-public__hero-copy { max-width: 820px; color: #f8fbf6; }
.tal-research-public__hero .tal-eyebrow { color: #caff47; }
.tal-research-public__hero h1 { max-width: 780px; margin: 16px 0 24px; font-size: clamp(3rem, 6vw, 6.7rem); line-height: .92; letter-spacing: -.07em; }
.tal-research-public__lead { max-width: 730px; color: #b6c2c4; font-size: clamp(1rem, 1.5vw, 1.28rem); line-height: 1.65; }
.tal-research-public__offer { display: flex; flex-wrap: wrap; gap: 8px; max-width: 780px; margin: 22px 0 0; }
.tal-research-public__offer span { display: inline-flex; align-items: center; gap: 7px; min-height: 35px; padding: 8px 11px; border: 1px solid rgba(202,255,71,.24); border-radius: 10px; color: #edf5ed; background: rgba(255,255,255,.07); }
.tal-research-public__offer i { color: #caff47; font-size: .7rem; }
.tal-research-public__offer strong { max-width: 360px; font-size: .65rem; line-height: 1.45; }
.tal-research-public__actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; margin: 34px 0; }
.tal-research-public__actions .tal-story-text-link { color: #f6f9f5; }
.tal-research-public__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 640px; border-top: 1px solid rgba(255,255,255,.15); }
.tal-research-public__facts span { display: grid; gap: 2px; padding: 22px 22px 0 0; }
.tal-research-public__facts strong { color: #caff47; font: 800 clamp(1.4rem, 2.5vw, 2.2rem)/1 "Inter", sans-serif; }
.tal-research-public__facts small { color: #9eadaf; font-size: .7rem; }
.tal-research-public__summary { padding: clamp(28px, 4vw, 48px); border: 1px solid #d9ded5; border-radius: 28px; background: rgba(255,255,255,.96); box-shadow: 0 30px 80px rgba(6,20,28,.18); }
.tal-research-public__summary h2 { margin: 8px 0 26px; font-size: clamp(1.55rem, 2.5vw, 2.25rem); letter-spacing: -.045em; }
.tal-research-public__score-list { display: grid; gap: 10px; }
.tal-research-public__score-list article { display: flex; gap: 14px; align-items: center; padding: 16px; border: 1px solid #dde3da; border-radius: 15px; background: #f8faf6; }
.tal-research-public__score-list article.is-primary { border-color: #b9d966; background: #f3fbdc; }
.tal-research-public__score-list article > span { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; border-radius: 11px; color: #0b1c26; background: #caff47; font: 850 .68rem/1 ui-monospace, monospace; }
.tal-research-public__score-list strong, .tal-research-public__score-list small { display: block; }
.tal-research-public__score-list strong { font-size: .83rem; }
.tal-research-public__score-list small { margin-top: 3px; color: #748083; font-size: .63rem; }
.tal-research-public__score-note { margin: 18px 0 0; color: #627073; font-size: .7rem; line-height: 1.55; }
.tal-research-public__section { padding: clamp(72px, 9vw, 130px) max(5vw, calc((100vw - 1420px)/2)); }
.tal-research-public__section--tint { background: #eaf0e7; }
.tal-research-public__section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .62fr); gap: 50px; align-items: end; margin-bottom: 42px; }
.tal-research-public__section-head h2 { max-width: 800px; margin: 8px 0 0; font-size: clamp(2.1rem, 4vw, 4.2rem); line-height: 1; letter-spacing: -.06em; }
.tal-research-public__section-head > p { margin: 0; color: #607073; font-size: .87rem; line-height: 1.7; }
.tal-research-public__measure-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.tal-research-public__measure-grid article { min-height: 320px; padding: 30px; border: 1px solid #dbe1d8; border-radius: 22px; background: #fff; }
.tal-research-public__measure-grid article.is-primary { color: #f7fbf5; border-color: #0b1c26; background: #0b1c26; }
.tal-research-public__measure-icon { display: grid; width: 48px; height: 48px; margin-bottom: 50px; place-items: center; border-radius: 14px; color: #0b1c26; background: #caff47; }
.tal-research-public__measure-grid article > span { color: #6b7a77; font-size: .6rem; font-weight: 850; text-transform: uppercase; letter-spacing: .12em; }
.tal-research-public__measure-grid .is-primary > span { color: #caff47; }
.tal-research-public__measure-grid h3 { margin: 10px 0 15px; font-size: 1.35rem; letter-spacing: -.035em; }
.tal-research-public__measure-grid p { margin: 0; color: #687578; font-size: .76rem; line-height: 1.65; }
.tal-research-public__measure-grid .is-primary p { color: #acb9ba; }
.tal-research-public__method-note { display: flex; gap: 18px; align-items: flex-start; margin-top: 18px; padding: 23px; border: 1px solid #d9dfd5; border-radius: 18px; background: #fbfcf9; }
.tal-research-public__method-note i { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; border-radius: 12px; background: #e8f3da; }
.tal-research-public__method-note strong { font-size: .85rem; }
.tal-research-public__method-note p { margin: 6px 0 0; color: #657477; font-size: .71rem; line-height: 1.6; }
.tal-research-public__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.tal-research-public__steps li { min-height: 220px; padding: 26px; border-top: 1px solid #bdc9bc; border-right: 1px solid #bdc9bc; }
.tal-research-public__steps li:last-child { border-right: 0; }
.tal-research-public__steps b { display: grid; width: 34px; height: 34px; margin-bottom: 42px; place-items: center; border-radius: 50%; background: #caff47; font: 850 .66rem/1 ui-monospace, monospace; }
.tal-research-public__steps strong, .tal-research-public__steps span { display: block; }
.tal-research-public__steps strong { margin-bottom: 9px; font-size: .86rem; }
.tal-research-public__steps span { color: #627173; font-size: .7rem; line-height: 1.55; }
.tal-research-public__outputs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.tal-research-public__outputs article { padding: 24px; border: 1px solid #dce2d8; border-radius: 18px; background: #fff; }
.tal-research-public__outputs i { margin-bottom: 32px; color: #315c4e; font-size: 1.15rem; }
.tal-research-public__outputs strong { display: block; font-size: .84rem; }
.tal-research-public__outputs p { margin: 8px 0 0; color: #6d797c; font-size: .68rem; line-height: 1.55; }
.tal-research-public__join { display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, .65fr); gap: clamp(40px, 7vw, 100px); align-items: center; color: #f7faf5; background: #0b1c26; }
.tal-research-public__join > div > .tal-eyebrow { color: #caff47; }
.tal-research-public__join h2 { max-width: 760px; margin: 10px 0 20px; font-size: clamp(2.2rem, 4.3vw, 4.8rem); line-height: .98; letter-spacing: -.06em; }
.tal-research-public__join > div > p:last-child { max-width: 760px; color: #adbbbc; line-height: 1.7; }
.tal-research-public__join aside { padding: 30px; border: 1px solid rgba(255,255,255,.17); border-radius: 22px; background: rgba(255,255,255,.06); }
.tal-research-public__join aside > span { color: #caff47; font-size: .61rem; font-weight: 850; text-transform: uppercase; letter-spacing: .12em; }
.tal-research-public__join aside strong { display: block; margin: 10px 0; font-size: 1.1rem; }
.tal-research-public__join aside p { color: #b4c0c1; font-size: .72rem; line-height: 1.6; }
.tal-research-public__join aside .tal-primary-button { margin-top: 12px; }
.tal-research-public__application { background: #eef1e8; }
.tal-research-public__application-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(310px, .55fr); gap: 24px; align-items: start; }
.tal-research-public__application-form { margin: 0; padding: clamp(22px, 3vw, 34px); border: 1px solid #d7ddd3; border-radius: 24px; background: #fff; box-shadow: 0 18px 55px rgba(10,28,36,.07); }
.tal-research-public__application-form textarea { min-height: 118px; }
.tal-research-public__application-flow { position: sticky; top: 105px; padding: 27px; border-radius: 22px; color: #f7faf5; background: #0b1c26; }
.tal-research-public__application-flow ol { display: grid; gap: 0; margin: 20px 0 22px; padding: 0; list-style: none; }
.tal-research-public__application-flow li { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; padding: 17px 0; border-top: 1px solid rgba(255,255,255,.12); }
.tal-research-public__application-flow li b { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; color: #0b1c26; background: #caff47; font: 850 .61rem/1 ui-monospace, monospace; }
.tal-research-public__application-flow strong, .tal-research-public__application-flow span { display: block; }
.tal-research-public__application-flow strong { font-size: .79rem; }
.tal-research-public__application-flow span { margin-top: 4px; color: #aebbbc; font-size: .67rem; line-height: 1.5; }
.tal-research-public__application-flow > p:last-child { display: flex; gap: 9px; margin: 0; color: #c0cbca; font-size: .66rem; line-height: 1.55; }
.tal-research-public__application-flow > p:last-child i { margin-top: 2px; color: #caff47; }
.tal-form-honeypot { position: fixed !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
.tal-research-public__footer { display: flex; flex-wrap: wrap; gap: 26px; justify-content: space-between; padding: 25px max(5vw, calc((100vw - 1420px)/2)); color: #748183; background: #07151e; font-size: .65rem; }
.tal-research-public__footer a { color: #b9c5c4; text-decoration: none; }
.tal-research-public__footer a:hover { color: #caff47; }
.tal-maturity-snapshot { margin: 0 0 24px; padding: 24px; border: 1px solid #d7dfd3; border-radius: 21px; background: #fff; box-shadow: 0 14px 38px rgba(12,31,40,.05); }
.tal-maturity-snapshot > header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr); gap: 32px; align-items: end; margin-bottom: 18px; }
.tal-maturity-snapshot > header h2 { margin: 5px 0 0; font-size: clamp(1.35rem, 2.2vw, 2rem); letter-spacing: -.045em; }
.tal-maturity-snapshot > header > p { margin: 0; color: #667477; font-size: .68rem; line-height: 1.6; }
.tal-maturity-snapshot > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: hidden; border: 1px solid #dce2d9; border-radius: 16px; }
.tal-maturity-snapshot article { position: relative; min-height: 142px; padding: 19px; background: #fafbf8; }
.tal-maturity-snapshot article + article { border-left: 1px solid #dce2d9; }
.tal-maturity-snapshot article.is-primary { background: #f1fbd7; }
.tal-maturity-snapshot article.is-structural { background: #f3f1eb; }
.tal-maturity-snapshot article span, .tal-maturity-snapshot article small, .tal-maturity-snapshot article time, .tal-maturity-snapshot article em { display: block; }
.tal-maturity-snapshot article span { min-height: 30px; color: #516066; font-size: .65rem; font-weight: 800; }
.tal-maturity-snapshot article strong { display: flex; align-items: baseline; margin: 7px 0 4px; font-size: 2rem; letter-spacing: -.05em; }
.tal-maturity-snapshot article strong b { font: inherit; }
.tal-maturity-snapshot article strong small { display: inline; margin-left: 2px; color: #748187; font-size: .72rem; font-weight: 760; letter-spacing: 0; }
.tal-maturity-snapshot article em { margin: -1px 0 7px; color: #345d4e; font-size: .62rem; font-style: normal; font-weight: 800; }
.tal-maturity-snapshot article small { color: #72807e; font-size: .58rem; line-height: 1.4; }
.tal-maturity-snapshot article time { margin-top: 8px; color: #51665a; font-size: .56rem; font-weight: 750; }
.tal-maturity-snapshot > footer { display: flex; gap: 9px; align-items: flex-start; margin-top: 14px; color: #68767a; font-size: .61rem; line-height: 1.5; }
.tal-maturity-snapshot > footer i { margin-top: 2px; color: #3b6a56; }
.tal-maturity-snapshot .tal-score-bands--results { margin: 14px 0 0; }
@media (max-width: 1050px) {
    .tal-research-public__hero { grid-template-columns: 1fr; background: #0b1c26; }
    .tal-research-public__summary { max-width: 720px; }
    .tal-research-public__section-head, .tal-research-public__join, .tal-research-public__application-layout { grid-template-columns: 1fr; }
    .tal-research-public__application-flow { position: static; }
    .tal-research-public__measure-grid, .tal-research-public__outputs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-research-public__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-maturity-snapshot > header { grid-template-columns: 1fr; }
    .tal-maturity-snapshot > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-maturity-snapshot article:nth-child(3) { border-top: 1px solid #dce2d9; border-left: 0; }
    .tal-maturity-snapshot article:nth-child(4) { border-top: 1px solid #dce2d9; }
    .tal-public-programme__intro { grid-template-columns: 1fr; }
    .tal-public-programme__flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-public-programme__flow li:nth-child(3) { border-top: 1px solid var(--tal-line); border-left: 0; }
    .tal-public-programme__flow li:nth-child(4) { border-top: 1px solid var(--tal-line); }
}
@media (max-width: 720px) {
    .tal-research-public__nav .tal-public-nav__links { display: none; }
    .tal-research-public__hero { min-height: auto; padding-top: 68px; }
    .tal-research-public__offer { display: grid; }
    .tal-research-public__offer span { width: 100%; }
    .tal-research-public__facts, .tal-research-public__measure-grid, .tal-research-public__outputs, .tal-research-public__steps { grid-template-columns: 1fr; }
    .tal-research-public__steps li { border-right: 0; }
    .tal-research-public__summary { padding: 23px; border-radius: 20px; }
    .tal-research-public__measure-grid article { min-height: 0; }
    .tal-research-public__measure-icon { margin-bottom: 28px; }
    .tal-maturity-snapshot > div { grid-template-columns: 1fr; }
    .tal-maturity-snapshot article + article { border-top: 1px solid #dce2d9; border-left: 0; }
    .tal-public-programme__actions { align-items: stretch; flex-direction: column; }
    .tal-public-programme__actions a { width: 100%; }
    .tal-public-programme__flow { grid-template-columns: 1fr; }
    .tal-public-programme__flow li + li,
    .tal-public-programme__flow li:nth-child(3),
    .tal-public-programme__flow li:nth-child(4) { border-top: 1px solid var(--tal-line); border-left: 0; }
    .tal-public-programme__flow li { min-height: 0; }
    .tal-public-programme__flow strong { margin-top: 24px; }
    .tal-score-bands { grid-template-columns: 1fr; }
    .tal-score-bands > span + span { border-top: 1px solid var(--tal-line); border-left: 0; }
}

/* Coordinator-controlled assessment closing */
.tal-ops-complete--waiting { display: inline-flex; align-items: center; gap: 7px; color: #755817; }
.tal-wave-manager__list { display: grid; gap: 12px; }
.tal-wave-manager__card { padding: 15px; border: 1px solid #dce2dd; border-radius: 14px; background: #fafbf8; }
.tal-wave-manager__card.is-decision-required { border-color: #d8c16b; background: #fffaf0; box-shadow: inset 4px 0 #e6c64f; }
.tal-wave-manager__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.tal-wave-manager__heading span { display: block; color: #69777c; font-size: .59rem; font-weight: 850; letter-spacing: .055em; text-transform: uppercase; }
.tal-wave-manager__heading h3 { margin: 5px 0 0; font-size: .84rem; line-height: 1.4; }
.tal-wave-manager__heading > b { flex: 0 0 auto; padding: 6px 8px; border-radius: 999px; color: #315943; background: #e7f2e7; font-size: .64rem; }
.tal-wave-manager__card > .tal-progress-line { height: 6px; margin: 12px 0 9px; overflow: hidden; border-radius: 999px; background: #e4e9e3; }
.tal-wave-manager__card > .tal-progress-line span { display: block; height: 100%; border-radius: inherit; background: #729164; }
.tal-wave-manager__card > p { margin: 0 0 11px; color: #66747a; font-size: .65rem; }
.tal-wave-manager__card > form .tal-ops-secondary { width: 100%; }
.tal-wave-manager__notice { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 9px; align-items: start; margin: 11px 0; padding: 11px; border-radius: 10px; color: #684f13; background: #fff0c9; }
.tal-wave-manager__notice > i { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 8px; background: rgba(255,255,255,.7); }
.tal-wave-manager__notice strong, .tal-wave-manager__notice small { display: block; }
.tal-wave-manager__notice strong { font-size: .68rem; }
.tal-wave-manager__notice small { margin-top: 3px; font-size: .6rem; line-height: 1.45; }
.tal-wave-manager__actions { margin-top: 11px; border-top: 1px solid #e0e5df; }
.tal-wave-manager__actions > summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 2px 3px; color: #385547; font-size: .67rem; font-weight: 850; cursor: pointer; list-style: none; }
.tal-wave-manager__actions > summary::-webkit-details-marker { display: none; }
.tal-wave-manager__actions[open] > summary i { transform: rotate(180deg); }
.tal-wave-manager__actions form { display: grid; gap: 8px; margin-top: 10px; }
.tal-wave-manager__actions label span { display: block; margin-bottom: 5px; color: #66747a; font-size: .59rem; font-weight: 850; text-transform: uppercase; }
.tal-wave-manager__actions input { width: 100%; min-height: 42px; padding: 8px 10px; border: 1px solid #cfd7d0; border-radius: 9px; background: #fff; }
.tal-wave-manager__actions .tal-ops-primary, .tal-wave-manager__actions .tal-ops-secondary { width: 100%; }
.tal-wave-manager__close { color: #873629; border-color: #e2b9b2; background: #fff8f7; }
.tal-wave-manager__boundary { display: flex; align-items: flex-start; gap: 8px; margin: 15px 0 0; padding-top: 14px; border-top: 1px solid #e3e7e3; color: #62736a; font-size: .62rem; line-height: 1.55; }

.tal-account-auth-page--wide .tal-account-auth-shell { display: block; min-height: calc(100vh - 126px); padding: 112px 24px 70px; }
.tal-account-auth-page--wide .tal-account-auth-story { display: none; }
.tal-account-auth-page--wide .tal-auth-access--account { display: block; width: min(1120px, 100%); min-height: 0; margin: 0 auto; padding: 0; }
.tal-account-auth-page--wide .tal-auth-card--account { width: 100%; max-width: none; padding: clamp(24px, 4vw, 48px); }
.tal-wave-decision { display: grid; gap: 22px; }
.tal-wave-decision .tal-account-card__heading { max-width: 790px; margin-bottom: 0; }
.tal-wave-decision .tal-account-card__heading h2 { font-size: clamp(1.55rem, 3vw, 2.35rem); }
.tal-wave-decision__summary { padding: 22px; border: 1px solid #d9e1da; border-radius: 18px; background: #f7f9f5; }
.tal-wave-decision__title { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.tal-wave-decision__title span:not(.tal-wave-decision__state) { color: #66786d; font-size: .62rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.tal-wave-decision__title h3 { margin: 5px 0 2px; font-size: 1.18rem; }
.tal-wave-decision__title p { margin: 0; color: #68767b; font-size: .7rem; }
.tal-wave-decision__state { display: inline-flex; align-items: center; gap: 7px; padding: 8px 10px; border-radius: 999px; color: #6c5216; background: #fff0c9; font-size: .63rem; font-weight: 850; }
.tal-wave-decision__summary dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 19px 0 13px; }
.tal-wave-decision__summary dl > div { padding: 13px; border: 1px solid #e0e6e0; border-radius: 11px; background: #fff; }
.tal-wave-decision__summary dt { color: #6e7c80; font-size: .57rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.tal-wave-decision__summary dd { margin: 5px 0 0; font-size: .8rem; font-weight: 800; }
.tal-wave-decision__progress { height: 8px; overflow: hidden; border-radius: 999px; background: #e3e8e2; }
.tal-wave-decision__progress span { display: block; height: 100%; border-radius: inherit; background: #729164; }
.tal-wave-decision__privacy { display: flex; align-items: flex-start; gap: 8px; margin: 13px 0 0; color: #4f695d; font-size: .65rem; }
.tal-wave-decision__choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.tal-wave-decision__choices > section { position: relative; display: grid; grid-template-rows: auto 1fr auto; gap: 14px; min-width: 0; padding: 22px; border: 1px solid #dce2dd; border-radius: 17px; background: #fff; }
.tal-wave-decision__number { display: grid; width: 31px; height: 31px; place-items: center; border-radius: 50%; color: var(--tal-night); background: var(--tal-acid); font: 850 .6rem/1 ui-monospace, monospace; }
.tal-wave-decision__choices h3 { margin: 0 0 7px; font-size: 1rem; }
.tal-wave-decision__choices p { margin: 0; color: #64737a; font-size: .69rem; line-height: 1.6; }
.tal-wave-decision__choices form { display: grid; gap: 10px; align-self: end; }
.tal-wave-decision__choices label span { display: block; margin-bottom: 6px; color: #5e6c72; font-size: .6rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.tal-wave-decision__choices input { width: 100%; min-height: 44px; padding: 9px 11px; border: 1px solid #cdd5ce; border-radius: 10px; color: var(--tal-ink); background: #fafbf8; }
.tal-wave-decision__choices button { width: 100%; }
.tal-wave-decision__reminder { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 19px; border: 1px solid #bed7c8; border-radius: 14px; background: #eef7f1; }
.tal-wave-decision__reminder > div { display: flex; align-items: flex-start; gap: 12px; }
.tal-wave-decision__reminder strong, .tal-wave-decision__reminder small { display: block; }
.tal-wave-decision__reminder strong { font-size: .73rem; }
.tal-wave-decision__reminder small { margin-top: 4px; color: #61756b; font-size: .62rem; }
.tal-wave-decision__security { margin: 0; color: #718078; font-size: .62rem; line-height: 1.5; text-align: center; }

@media (max-width: 720px) {
    .tal-account-auth-page--wide .tal-account-auth-shell { padding: 90px 14px 45px; }
    .tal-account-auth-page--wide .tal-auth-card--account { padding: 20px; }
    .tal-wave-decision__title, .tal-wave-decision__reminder { align-items: stretch; flex-direction: column; }
    .tal-wave-decision__state { align-self: flex-start; }
    .tal-wave-decision__summary dl, .tal-wave-decision__choices { grid-template-columns: 1fr; }
    .tal-wave-decision__reminder button { width: 100%; }
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

html[data-tal-scroll="instant"] {
    scroll-behavior: auto;
}

body.tal-auth-page,
body.tal-portal-page {
    margin: 0;
    color: var(--tal-ink);
    background: var(--tal-paper);
    font-family: Inter, Aptos, "Segoe UI", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
}

.tal-copy[data-lang] {
    display: none !important;
}

html[data-tal-lang="tr"] .tal-copy[data-lang="tr"],
html[data-tal-lang="en"] .tal-copy[data-lang="en"],
html[data-tal-lang="de"] .tal-copy[data-lang="en"],
html[data-tal-lang="es"] .tal-copy[data-lang="en"],
html[data-tal-lang="fr"] .tal-copy[data-lang="en"],
html[data-tal-lang="ru"] .tal-copy[data-lang="en"],
html[data-tal-lang="zh"] .tal-copy[data-lang="en"],
html[data-tal-lang="ar"] .tal-copy[data-lang="en"],
html[data-tal-lang="hi"] .tal-copy[data-lang="en"],
html[data-tal-lang="ur"] .tal-copy[data-lang="en"] {
    display: inline !important;
}

.tal-skip-link {
    position: fixed;
    z-index: 9999;
    top: 12px;
    left: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    color: var(--tal-night);
    background: var(--tal-acid);
    font-size: .84rem;
    font-weight: 800;
    transform: translateY(-160%);
    transition: transform .2s ease;
}

.tal-skip-link:focus {
    color: var(--tal-night);
    transform: translateY(0);
}

.tal-brand {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    color: var(--tal-ink);
    text-decoration: none;
}

.tal-brand:hover {
    color: inherit;
    text-decoration: none;
}

.tal-brand--light {
    color: #fff;
}

.tal-brand__mark {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 12px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, .16), rgba(255, 255, 255, .025)),
        rgba(9, 30, 43, .24);
    box-shadow:
        0 12px 30px rgba(2, 13, 22, .22),
        inset 0 1px 0 rgba(255, 255, 255, .16);
}

.tal-brand__mark span {
    position: absolute;
    display: block;
    background: currentColor;
    border-radius: 4px;
}

.tal-brand__mark span:nth-child(1) {
    top: 9px;
    left: 12px;
    width: 3px;
    height: 22px;
    transform: rotate(24deg);
}

.tal-brand__mark span:nth-child(2) {
    top: 9px;
    right: 12px;
    width: 3px;
    height: 22px;
    background: var(--tal-acid);
    transform: rotate(-24deg);
}

.tal-brand__mark span:nth-child(3) {
    top: 22px;
    left: 13px;
    width: 14px;
    height: 3px;
}

.tal-brand__mark::after {
    position: absolute;
    top: 7px;
    right: 7px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--tal-acid);
    box-shadow: 0 0 0 4px rgba(215, 255, 104, .12);
    content: "";
}

.tal-brand__name {
    letter-spacing: -.03em;
    font-size: 1rem;
    font-weight: 750;
}

.tal-eyebrow {
    margin: 0 0 14px;
    color: var(--tal-ink-soft);
    letter-spacing: .13em;
    font-size: .76rem;
    font-weight: 850;
    text-transform: uppercase;
}

.tal-primary-button,
.tal-secondary-button {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: 12px;
    font-size: .86rem;
    font-style: normal;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease;
}

.tal-primary-button {
    color: var(--tal-night);
    background: var(--tal-acid);
    box-shadow: 0 10px 22px rgba(148, 188, 36, .18);
}

.tal-primary-button:hover,
.tal-primary-button:focus-visible {
    color: var(--tal-night);
    box-shadow: 0 13px 30px rgba(148, 188, 36, .28);
    text-decoration: none;
    transform: translateY(-2px);
}

.tal-secondary-button {
    border-color: var(--tal-line);
    color: var(--tal-ink);
    background: transparent;
}

.tal-secondary-button:hover,
.tal-secondary-button:focus-visible {
    border-color: var(--tal-ink);
    color: var(--tal-ink);
    background: #fff;
    text-decoration: none;
    transform: translateY(-2px);
}

/* Authentication */
.tal-auth-page {
    min-width: 320px;
    min-height: 100vh;
    padding-top: 88px;
    overflow-x: hidden;
}

.tal-auth-shell {
    display: grid;
    min-height: calc(100vh - 88px);
    grid-template-columns: minmax(0, 1.12fr) minmax(430px, .88fr);
}

.tal-auth-story {
    position: relative;
    display: flex;
    min-height: calc(100vh - 88px);
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
    padding: clamp(28px, 4.5vw, 68px);
    color: #f8fbf3;
    background:
        radial-gradient(circle at 82% 18%, rgba(141, 216, 232, .23), transparent 24%),
        radial-gradient(circle at 15% 88%, rgba(215, 255, 104, .14), transparent 28%),
        var(--tal-night);
}

.tal-auth-story::before,
.tal-auth-story::after {
    position: absolute;
    z-index: 0;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.tal-auth-story::before {
    right: -25vw;
    bottom: -35vw;
    width: 70vw;
    height: 70vw;
}

.tal-auth-story::after {
    right: -8vw;
    bottom: -17vw;
    width: 38vw;
    height: 38vw;
    border-color: rgba(215, 255, 104, .25);
}

.tal-auth-story__topline,
.tal-auth-story__content,
.tal-auth-story__footer {
    position: relative;
    z-index: 1;
}

.tal-auth-story__topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.tal-language {
    display: flex;
    align-items: center;
    gap: 7px;
    color: rgba(255, 255, 255, .35);
    font-size: .72rem;
    font-weight: 800;
}

.tal-language a {
    color: rgba(255, 255, 255, .55);
    text-decoration: none;
}

.tal-language a.is-active,
.tal-language a:hover {
    color: var(--tal-acid);
}

.tal-auth-story__content {
    max-width: 760px;
    margin: clamp(54px, 9vh, 120px) 0 clamp(54px, 9vh, 105px);
}

.tal-programme-spotlight {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    max-width: 790px;
    margin: 0 0 28px;
    padding: 14px 16px;
    border: 1px solid rgba(202, 255, 79, .35);
    border-radius: 15px;
    color: #fff;
    background: rgba(255, 255, 255, .075);
    box-shadow: 0 18px 45px rgba(0, 0, 0, .13);
    text-decoration: none;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.tal-programme-spotlight:hover {
    border-color: rgba(202, 255, 79, .75);
    color: #fff;
    background: rgba(255, 255, 255, .11);
    text-decoration: none;
    transform: translateY(-2px);
}

.tal-programme-spotlight__status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 9px;
    border-radius: 999px;
    color: var(--tal-night);
    background: var(--tal-acid);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .045em;
    text-transform: uppercase;
    white-space: nowrap;
}

.tal-programme-spotlight__status i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #347154;
    box-shadow: 0 0 0 4px rgba(52, 113, 84, .13);
}

.tal-programme-spotlight__copy strong,
.tal-programme-spotlight__copy small { display: block; }
.tal-programme-spotlight__copy strong { font-size: .86rem; line-height: 1.35; }
.tal-programme-spotlight__copy small { margin-top: 4px; color: rgba(255, 255, 255, .62); font-size: .68rem; line-height: 1.45; }
.tal-programme-spotlight > i { color: var(--tal-acid); }

.tal-auth-story__content .tal-eyebrow {
    color: var(--tal-acid);
}

.tal-auth-story__content h1 {
    max-width: 760px;
    margin: 0;
    letter-spacing: -.055em;
    font-size: clamp(3rem, 5.7vw, 6.4rem);
    font-weight: 720;
    line-height: .98;
}

.tal-auth-story__lead {
    max-width: 620px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .67);
    font-size: clamp(1rem, 1.35vw, 1.25rem);
    line-height: 1.65;
}

.tal-auth-method {
    display: grid;
    max-width: 680px;
    margin-top: clamp(42px, 7vh, 78px);
    border-top: 1px solid rgba(255, 255, 255, .15);
    grid-template-columns: repeat(3, 1fr);
}

.tal-auth-method article {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2px 13px;
    padding: 20px 18px 0 0;
}

.tal-auth-method article + article {
    padding-left: 20px;
    border-left: 1px solid rgba(255, 255, 255, .15);
}

.tal-auth-method__number {
    grid-row: 1 / 3;
    color: var(--tal-acid);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .7rem;
}

.tal-auth-method strong {
    font-size: .9rem;
}

.tal-auth-method small {
    color: rgba(255, 255, 255, .45);
    font-size: .72rem;
}

.tal-auth-story__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: rgba(255, 255, 255, .4);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .65rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.tal-signal {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.tal-signal i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--tal-success);
    box-shadow: 0 0 0 5px rgba(75, 214, 159, .12);
}

.tal-auth-access {
    display: flex;
    min-height: calc(100vh - 88px);
    align-items: center;
    justify-content: center;
    padding: clamp(28px, 5vw, 86px);
    background:
        linear-gradient(rgba(11, 24, 34, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(11, 24, 34, .035) 1px, transparent 1px),
        var(--tal-paper);
    background-size: 28px 28px;
    scroll-margin-top: 88px;
}

.tal-auth-card {
    width: min(100%, 510px);
    padding: clamp(30px, 4.6vw, 58px);
    border: 1px solid rgba(16, 32, 42, .08);
    border-radius: var(--tal-radius-lg);
    background: rgba(255, 255, 255, .92);
    box-shadow: var(--tal-shadow);
    backdrop-filter: blur(12px);
}

.tal-auth-card__index {
    display: block;
    margin-bottom: 25px;
    color: var(--tal-coral);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.tal-auth-card h2,
.tal-auth-card h3 {
    margin: 0;
    color: var(--tal-ink);
    letter-spacing: -.04em;
    font-size: clamp(1.8rem, 3.2vw, 2.5rem);
    font-weight: 760;
    line-height: 1.08;
}

.tal-auth-card h3 {
    margin-top: 18px;
    font-size: 1.75rem;
}

.tal-auth-card__intro > p,
.tal-auth-step > p {
    margin: 14px 0 0;
    color: var(--tal-ink-soft);
    font-size: .9rem;
    line-height: 1.65;
}

.tal-auth-invitation-note,
.tal-signup-invitation-note {
    margin: 0 0 22px;
    padding: 14px 16px;
    border: 1px solid rgba(117, 151, 31, .28);
    border-radius: 14px;
    color: var(--tal-ink);
    background: rgba(215, 255, 104, .18);
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.tal-auth-invitation-note > i,
.tal-signup-invitation-note > i {
    margin-top: 3px;
    color: #668615;
}

.tal-auth-invitation-note strong,
.tal-auth-invitation-note span,
.tal-signup-invitation-note strong,
.tal-signup-invitation-note span {
    display: block;
}

.tal-auth-invitation-note strong,
.tal-signup-invitation-note strong {
    font-size: .8rem;
}

.tal-auth-invitation-note span,
.tal-signup-invitation-note span {
    margin-top: 4px;
    color: var(--tal-ink-soft);
    font-size: .73rem;
    line-height: 1.5;
}

.tal-auth-message {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 12px;
    align-items: start;
    margin-top: 22px;
    padding: 14px 15px;
    border: 1px solid rgba(184, 55, 50, .22);
    border-radius: 13px;
    color: #762c28;
    background: #fff3f1;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity .18s ease, transform .18s ease;
}

.tal-auth-message[hidden] {
    display: none !important;
}

.tal-auth-message.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.tal-auth-message.is-success {
    border-color: rgba(41, 113, 78, .22);
    color: #235e43;
    background: #edf8f1;
}

.tal-auth-message__icon {
    padding-top: 1px;
    font-size: 1rem;
}

.tal-auth-message strong {
    display: block;
    color: inherit;
    font-size: .82rem;
    line-height: 1.35;
}

.tal-auth-message p {
    margin: 3px 0 0;
    color: inherit;
    font-size: .76rem;
    line-height: 1.5;
}

.tal-auth-message button,
.tal-app-notification button {
    padding: 2px;
    border: 0;
    color: inherit;
    background: transparent;
    cursor: pointer;
}

.tal-form,
.tal-auth-step .tal-field:first-of-type {
    margin-top: 34px;
}

.tal-field {
    margin-bottom: 20px;
}

.tal-field label,
.tal-field__label-row {
    margin-bottom: 8px;
    color: var(--tal-ink);
    font-size: .73rem;
    font-weight: 800;
}

.tal-field__label-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.tal-field__label-row label {
    margin: 0;
}

.tal-field__control {
    position: relative;
}

.tal-field__control > i {
    position: absolute;
    top: 50%;
    left: 17px;
    color: #8a969c;
    font-size: .9rem;
    transform: translateY(-50%);
    pointer-events: none;
}

.tal-field input {
    width: 100%;
    height: 54px;
    padding: 0 16px 0 47px;
    border: 1px solid #d6dad8;
    border-radius: 12px;
    outline: none;
    color: var(--tal-ink);
    background: #fbfcf9;
    font-size: .92rem;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.tal-field input:hover {
    border-color: #adb6b6;
}

.tal-field input:focus {
    border-color: var(--tal-night);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(16, 32, 42, .08);
}

.tal-field input.input-validation-error,
.tal-field input.error {
    border-color: #d84b43;
}

.tal-field span.text-danger,
.tal-field label.error {
    display: block;
    margin-top: 6px;
    color: #b63732 !important;
    font-size: .7rem;
    font-weight: 650;
}

.tal-text-button,
.tal-link-button,
.tal-back-button {
    padding: 0;
    border: 0;
    color: var(--tal-ink-soft);
    background: transparent;
    font-size: .72rem;
    font-weight: 750;
    cursor: pointer;
}

.tal-text-button:hover,
.tal-link-button:hover,
.tal-back-button:hover {
    color: var(--tal-ink);
}

.tal-form .tal-primary-button,
.tal-auth-step > .tal-primary-button {
    width: 100%;
    margin-top: 8px;
    border: 0;
}

.tal-auth-links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    margin-top: 24px;
    font-size: .74rem;
    font-weight: 750;
}

.tal-auth-links span {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #9fa7a9;
}

.tal-auth-links a {
    color: var(--tal-ink);
}

.tal-auth-step {
    animation: talFadeUp .28s ease both;
}

.tal-auth-step[hidden] {
    display: none !important;
}

.tal-account-resolution {
    display: grid;
    gap: 18px;
    margin-top: 28px;
    padding: 22px;
    border: 1px solid rgba(41, 113, 78, .22);
    border-radius: 16px;
    color: var(--tal-ink);
    background: #f1f8ee;
}

.tal-account-resolution[hidden] {
    display: none !important;
}

.tal-account-resolution__icon {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 14px;
    color: #235e43;
    background: rgba(215, 255, 104, .58);
    font-size: 1.15rem;
}

.tal-account-resolution strong {
    display: block;
    font-size: 1rem;
}

.tal-account-resolution p {
    margin: 6px 0 0;
    color: var(--tal-ink-soft);
    font-size: .8rem;
    line-height: 1.55;
}

.tal-account-resolution__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.tal-account-resolution__actions .tal-primary-button,
.tal-account-resolution__actions .tal-secondary-button {
    justify-content: space-between;
}

@media (max-width: 520px) {
    .tal-account-resolution__actions {
        grid-template-columns: 1fr;
    }
}

.tal-back-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.tal-auth-card__privacy {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 30px 0 0;
    padding-top: 18px;
    border-top: 1px solid #e8e9e4;
    color: #7a858b;
    font-size: .67rem;
    line-height: 1.45;
}

.tal-auth-card__privacy i {
    margin-top: 2px;
    color: #5e6c72;
}

.tal-loading-overlay {
    position: fixed;
    z-index: 10000;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(5, 16, 23, .72);
    backdrop-filter: blur(5px);
}

.tal-loading-overlay[style*="display: block"] {
    display: flex !important;
}

.tal-app-notification {
    position: fixed;
    z-index: 10050;
    top: 92px;
    right: 24px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 12px;
    width: min(420px, calc(100vw - 32px));
    padding: 16px;
    border: 1px solid rgba(184, 55, 50, .18);
    border-radius: 14px;
    color: #762c28;
    background: #fff8f6;
    box-shadow: 0 18px 45px rgba(11, 24, 34, .16);
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .2s ease, transform .2s ease;
}

.tal-app-notification.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.tal-app-notification.is-success {
    border-color: rgba(41, 113, 78, .2);
    color: #235e43;
    background: #f1faf4;
}

.tal-app-notification__icon {
    padding-top: 1px;
}

.tal-app-notification strong {
    display: block;
    font-size: .86rem;
}

.tal-app-notification p {
    margin: 4px 0 0;
    color: inherit;
    font-size: .78rem;
    line-height: 1.5;
}

.tal-loader {
    display: flex;
    align-items: end;
    gap: 6px;
    height: 40px;
}

.tal-loader span {
    width: 7px;
    height: 16px;
    border-radius: 6px;
    background: var(--tal-acid);
    animation: talLoader .75s ease-in-out infinite alternate;
}

.tal-loader span:nth-child(2) {
    height: 30px;
    animation-delay: .15s;
}

.tal-loader span:nth-child(3) {
    height: 23px;
    animation-delay: .3s;
}

/* Portal shell */
.tal-portal-page {
    min-width: 320px;
    min-height: 100vh;
}

.tal-portal-shell {
    display: flex;
    min-height: 100vh;
}

.tal-sidebar {
    position: fixed;
    z-index: 1035;
    top: 0;
    bottom: 0;
    left: 0;
    display: flex;
    width: var(--tal-sidebar-width);
    flex-direction: column;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0, rgba(141, 216, 232, .09), transparent 28%),
        var(--tal-night);
    box-shadow: 8px 0 40px rgba(4, 14, 20, .08);
}

.tal-sidebar__brand {
    display: flex;
    min-height: 78px;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
    border-bottom: 1px solid var(--tal-line-dark);
}

.tal-sidebar__brand .tal-brand__name {
    font-size: .88rem;
}

.tal-sidebar__workspace {
    margin: 22px 17px 10px;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 14px;
    background: rgba(255, 255, 255, .035);
}

.tal-sidebar__workspace-label,
.tal-sidebar__section-label {
    display: block;
    margin: 0 0 8px;
    color: rgba(255, 255, 255, .38);
    letter-spacing: .11em;
    font-size: .58rem;
    font-weight: 800;
    text-transform: uppercase;
}

.tal-sidebar__workspace strong {
    display: block;
    font-size: .78rem;
    line-height: 1.35;
}

.tal-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 13px;
    color: rgba(255, 255, 255, .54);
    font-size: .61rem;
}

.tal-status-pill i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--tal-success);
}

.tal-sidebar__navigation {
    flex: 1;
    padding: 16px 12px 22px;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-color: rgba(255, 255, 255, .16) transparent;
    scrollbar-width: thin;
}

.tal-sidebar__section-label {
    margin: 18px 12px 7px;
}

.tal-sidebar__home,
.tal-generated-menu .nav-link {
    display: flex;
    min-height: 43px;
    align-items: center;
    gap: 11px;
    margin: 3px 0;
    padding: 9px 12px;
    border-radius: 9px;
    color: rgba(255, 255, 255, .62) !important;
    font-size: .74rem;
    font-weight: 650;
    text-decoration: none;
    transition: color .16s ease, background-color .16s ease;
}

.tal-sidebar__home i,
.tal-generated-menu .nav-link > .nav-icon,
.tal-generated-menu .nav-link > i:first-child {
    width: 18px;
    margin: 0 !important;
    color: rgba(255, 255, 255, .34);
    font-size: .78rem !important;
    text-align: center;
}

.tal-sidebar__home:hover,
.tal-sidebar__home.is-active,
.tal-generated-menu .nav-link:hover,
.tal-generated-menu .nav-link.active {
    color: #fff !important;
    background: rgba(255, 255, 255, .075) !important;
}

.tal-sidebar__home.is-active {
    box-shadow: inset 3px 0 var(--tal-acid);
}

.tal-sidebar__home.is-active i,
.tal-generated-menu .nav-link:hover > i,
.tal-generated-menu .nav-link.active > i {
    color: var(--tal-acid);
}

.tal-generated-menu,
.tal-generated-menu .nav-treeview {
    padding: 0;
    list-style: none;
}

.tal-generated-menu .nav-treeview {
    margin: 2px 0 8px 15px;
    padding-left: 9px;
    border-left: 1px solid rgba(255, 255, 255, .1);
}

.tal-generated-menu .nav-treeview .nav-link {
    min-height: 36px;
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: .67rem;
}

.tal-generated-menu .right {
    margin-left: auto;
}

.tal-sidebar__footer {
    padding: 14px;
    border-top: 1px solid var(--tal-line-dark);
}

.tal-user-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px;
    border-radius: 12px;
    color: #fff;
    text-decoration: none;
    transition: background-color .16s ease;
}

.tal-user-card:hover {
    color: #fff;
    background: rgba(255, 255, 255, .06);
    text-decoration: none;
}

.tal-user-card__avatar {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: 10px;
    color: var(--tal-night);
    background: var(--tal-acid);
    font-size: .8rem;
    font-weight: 850;
}

.tal-user-card__meta {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
}

.tal-user-card__meta strong {
    overflow: hidden;
    font-size: .7rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-user-card__meta small {
    color: rgba(255, 255, 255, .4);
    font-size: .58rem;
}

.tal-user-card > i {
    color: rgba(255, 255, 255, .28);
    font-size: .63rem;
}

.tal-portal-main {
    display: flex;
    min-width: 0;
    min-height: 100vh;
    flex: 1;
    flex-direction: column;
    margin-left: var(--tal-sidebar-width);
}

.tal-topbar {
    position: sticky;
    z-index: 1020;
    top: 0;
    display: flex;
    min-height: 78px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 clamp(20px, 3.4vw, 52px);
    border-bottom: 1px solid rgba(16, 32, 42, .09);
    background: rgba(244, 241, 233, .91);
    backdrop-filter: blur(14px);
}

.tal-topbar__left,
.tal-topbar__actions,
.tal-breadcrumb {
    display: flex;
    align-items: center;
}

.tal-topbar__left {
    min-width: 0;
    gap: 16px;
}

.tal-breadcrumb {
    min-width: 0;
    gap: 9px;
    color: #7a868b;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .64rem;
}

.tal-breadcrumb i {
    font-size: .48rem;
}

.tal-breadcrumb strong {
    overflow: hidden;
    color: var(--tal-ink);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-topbar__actions {
    gap: 8px;
}

.tal-icon-button {
    display: inline-grid;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(16, 32, 42, .11);
    border-radius: 10px;
    color: var(--tal-ink-soft);
    background: rgba(255, 255, 255, .42);
    cursor: pointer;
    transition: border-color .16s ease, color .16s ease, background-color .16s ease;
}

.tal-icon-button:hover,
.tal-icon-button:focus-visible {
    border-color: var(--tal-ink);
    color: var(--tal-ink);
    background: #fff;
    text-decoration: none;
}

.tal-sidebar__close,
.tal-sidebar__open {
    display: none;
}

.tal-sidebar__close {
    border-color: rgba(255, 255, 255, .14);
    color: rgba(255, 255, 255, .7);
    background: transparent;
}

.tal-logout-button {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    gap: 9px;
    margin-left: 5px;
    padding: 0 13px;
    border: 1px solid rgba(16, 32, 42, .11);
    border-radius: 10px;
    color: var(--tal-ink);
    background: rgba(255, 255, 255, .42);
    font-size: .7rem;
    font-weight: 750;
}

.tal-logout-button:hover {
    border-color: var(--tal-coral);
    color: #b64232;
    background: #fff;
    text-decoration: none;
}

.tal-main-content {
    width: 100%;
    max-width: 1660px;
    flex: 1;
    margin: 0 auto;
    padding: clamp(24px, 3.5vw, 54px);
    outline: none;
}

.tal-portal-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px clamp(24px, 3.5vw, 54px);
    border-top: 1px solid rgba(16, 32, 42, .09);
    color: #879197;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .58rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.tal-portal-footer a {
    color: inherit;
    text-decoration: none;
    transition: color .18s ease;
}

.tal-portal-footer a:hover {
    color: #47715d;
}

.tal-sidebar-backdrop {
    display: none;
}

/* Dashboard */
.tal-dashboard {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.tal-dashboard-hero {
    position: relative;
    display: flex;
    min-height: 315px;
    align-items: end;
    justify-content: space-between;
    gap: 35px;
    overflow: hidden;
    padding: clamp(28px, 4vw, 55px);
    border-radius: var(--tal-radius-lg);
    color: #fff;
    background:
        radial-gradient(circle at 79% 19%, rgba(141, 216, 232, .22), transparent 21%),
        var(--tal-night);
}

.tal-dashboard-hero__copy,
.tal-dashboard-hero__actions {
    position: relative;
    z-index: 2;
}

.tal-dashboard-hero__copy {
    max-width: 760px;
}

.tal-dashboard-hero .tal-eyebrow {
    color: var(--tal-acid);
}

.tal-dashboard-hero h1 {
    margin: 0;
    letter-spacing: -.045em;
    font-size: clamp(2.3rem, 4.6vw, 4.7rem);
    font-weight: 720;
    line-height: 1;
}

.tal-dashboard-hero__copy > p:last-child {
    max-width: 670px;
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .62);
    font-size: .96rem;
    line-height: 1.65;
}

.tal-dashboard-hero__actions {
    display: flex;
    min-width: 240px;
    flex-direction: column;
    gap: 9px;
}

.tal-dashboard-hero__actions .tal-secondary-button {
    border-color: rgba(255, 255, 255, .2);
    color: #fff;
}

.tal-dashboard-hero__actions .tal-secondary-button:hover {
    color: var(--tal-night);
}

.tal-dashboard-hero__orbit {
    position: absolute;
    z-index: 1;
    top: -125px;
    right: -85px;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 50%;
}

.tal-dashboard-hero__orbit span {
    position: absolute;
    border: 1px solid rgba(215, 255, 104, .18);
    border-radius: 50%;
    inset: 55px;
}

.tal-dashboard-hero__orbit span:nth-child(2) {
    inset: 115px;
}

.tal-dashboard-hero__orbit span:nth-child(3) {
    inset: 175px;
}

.tal-dashboard-hero__orbit i {
    position: absolute;
    bottom: 58px;
    left: 82px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--tal-coral);
    box-shadow: 0 0 0 8px rgba(255, 115, 93, .12);
}

.tal-operating-strip {
    display: grid;
    overflow: hidden;
    border: 1px solid var(--tal-line);
    border-radius: var(--tal-radius);
    background: rgba(255, 255, 255, .66);
    grid-template-columns: repeat(4, 1fr);
}

.tal-operating-strip article {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
    padding: 20px;
}

.tal-operating-strip article + article {
    border-left: 1px solid var(--tal-line);
}

.tal-operating-strip__icon {
    display: grid;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    place-items: center;
    border-radius: 11px;
    color: var(--tal-night);
    background: #e5e9df;
    font-size: .84rem;
}

.tal-operating-strip article:nth-child(2) .tal-operating-strip__icon {
    background: #e4f5f6;
}

.tal-operating-strip article:nth-child(3) .tal-operating-strip__icon {
    background: #f7e6df;
}

.tal-operating-strip article:nth-child(4) .tal-operating-strip__icon {
    background: #edfac9;
}

.tal-operating-strip article div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.tal-operating-strip small {
    color: #7d888c;
    font-size: .58rem;
    text-transform: uppercase;
}

.tal-operating-strip strong {
    margin-top: 3px;
    overflow: hidden;
    font-size: .72rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-dashboard-grid {
    display: grid;
    gap: 24px;
    grid-template-columns: minmax(0, 1.6fr) minmax(280px, .65fr);
}

.tal-panel {
    border: 1px solid var(--tal-line);
    border-radius: var(--tal-radius);
    background: rgba(255, 255, 255, .72);
}

.tal-panel--journey {
    padding: clamp(24px, 3vw, 38px);
}

.tal-panel__heading,
.tal-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
}

.tal-panel__heading h2,
.tal-section-heading h2 {
    margin: 0;
    letter-spacing: -.035em;
    font-size: clamp(1.45rem, 2.4vw, 2.15rem);
    font-weight: 750;
}

.tal-panel__heading .tal-eyebrow,
.tal-section-heading .tal-eyebrow {
    margin-bottom: 7px;
}

.tal-panel__badge {
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid var(--tal-line);
    border-radius: 20px;
    color: #768287;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .58rem;
    text-transform: uppercase;
}

.tal-journey {
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
}

.tal-journey li {
    display: grid;
    align-items: center;
    gap: 18px;
    padding: 19px 0;
    border-top: 1px solid var(--tal-line);
    grid-template-columns: 38px minmax(0, 1fr) 36px;
}

.tal-journey__number {
    color: var(--tal-coral);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .68rem;
    font-weight: 800;
}

.tal-journey strong {
    display: block;
    font-size: .83rem;
}

.tal-journey p {
    margin: 4px 0 0;
    color: #738087;
    font-size: .69rem;
    line-height: 1.5;
}

.tal-journey a {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 1px solid var(--tal-line);
    border-radius: 50%;
    color: var(--tal-ink);
    font-size: .67rem;
    transform: rotate(-45deg);
    transition: background-color .16s ease, border-color .16s ease, transform .16s ease;
}

.tal-journey a:hover {
    border-color: var(--tal-night);
    color: #fff;
    background: var(--tal-night);
    text-decoration: none;
    transform: rotate(0);
}

.tal-panel--principle {
    position: relative;
    display: flex;
    min-height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    padding: clamp(26px, 3vw, 40px);
    color: #fff;
    background: var(--tal-night-2);
}

.tal-panel--principle::before {
    position: absolute;
    top: -90px;
    right: -75px;
    width: 220px;
    height: 220px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
    box-shadow: 0 0 0 48px rgba(255, 255, 255, .025), 0 0 0 96px rgba(255, 255, 255, .018);
    content: "";
}

.tal-panel__symbol {
    position: relative;
    z-index: 1;
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    margin-bottom: auto;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 50%;
    color: var(--tal-acid);
    font-family: Georgia, serif;
    font-size: 1.25rem;
}

.tal-panel--principle .tal-eyebrow {
    margin-top: 75px;
    color: var(--tal-sky);
}

.tal-panel--principle blockquote {
    position: relative;
    z-index: 1;
    margin: 0;
    letter-spacing: -.025em;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2vw, 1.8rem);
    line-height: 1.34;
}

.tal-principle-axis {
    display: grid;
    margin-top: 34px;
    border-top: 1px solid rgba(255, 255, 255, .13);
    grid-template-columns: repeat(3, 1fr);
}

.tal-principle-axis span {
    display: flex;
    align-items: center;
    gap: 6px;
    padding-top: 13px;
}

.tal-principle-axis i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--tal-acid);
}

.tal-principle-axis small {
    color: rgba(255, 255, 255, .42);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .52rem;
    text-transform: uppercase;
}

.tal-modules {
    padding-top: clamp(18px, 3vw, 38px);
}

.tal-section-heading > p {
    max-width: 380px;
    margin: 0;
    color: #738087;
    font-size: .7rem;
    line-height: 1.55;
    text-align: right;
}

.tal-module-grid {
    display: grid;
    gap: 12px;
    margin-top: 24px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tal-module-card {
    position: relative;
    display: grid;
    min-height: 185px;
    align-content: space-between;
    gap: 25px;
    padding: 22px;
    border: 1px solid var(--tal-line);
    border-radius: 16px;
    color: var(--tal-ink);
    background: rgba(255, 255, 255, .67);
    text-decoration: none;
    grid-template-columns: 42px minmax(0, 1fr) 16px;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.tal-module-card:hover {
    border-color: rgba(16, 32, 42, .35);
    color: var(--tal-ink);
    background: #fff;
    box-shadow: 0 18px 38px rgba(16, 32, 42, .08);
    text-decoration: none;
    transform: translateY(-4px);
}

.tal-module-card__icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    color: var(--tal-night);
    background: #e7ebe3;
    font-size: .86rem;
}

.tal-module-card:nth-child(4n + 2) .tal-module-card__icon {
    background: #e2f3f6;
}

.tal-module-card:nth-child(4n + 3) .tal-module-card__icon {
    background: #f9e7e1;
}

.tal-module-card:nth-child(4n + 4) .tal-module-card__icon {
    background: #ecf8cd;
}

.tal-module-card > span:nth-child(2) {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.tal-module-card small {
    color: #8a9599;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .51rem;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.tal-module-card strong {
    margin-top: 14px;
    letter-spacing: -.02em;
    font-size: .86rem;
    line-height: 1.25;
}

.tal-module-card em {
    margin-top: 6px;
    color: #7a858a;
    font-size: .61rem;
    font-style: normal;
    line-height: 1.4;
}

.tal-module-card > i {
    align-self: start;
    color: #a0a8aa;
    font-size: .67rem;
    transform: rotate(45deg);
    transition: color .18s ease, transform .18s ease;
}

.tal-module-card:hover > i {
    color: var(--tal-coral);
    transform: rotate(90deg);
}

/* Language picker */
.tal-language-picker {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    gap: 8px;
    padding: 0 10px;
    border: 1px solid rgba(16, 32, 42, .12);
    border-radius: 10px;
    color: var(--tal-ink);
    background: rgba(255, 255, 255, .5);
}

.tal-language-picker > i {
    pointer-events: none;
    font-size: .68rem;
}

.tal-language-picker > i:last-child {
    opacity: .55;
    font-size: .48rem;
}

.tal-language-picker select {
    max-width: 120px;
    border: 0;
    outline: 0;
    color: inherit;
    background: transparent;
    font: inherit;
    font-size: .67rem;
    font-weight: 750;
    cursor: pointer;
    appearance: none;
}

.tal-language-picker--dark {
    border-color: rgba(255, 255, 255, .16);
    color: #fff;
    background: rgba(255, 255, 255, .06);
}

.tal-language-picker--dark select option {
    color: var(--tal-night);
    background: #fff;
}

.tal-language-picker--portal {
    min-width: 78px;
}

.tal-language-picker--nav {
    min-width: 76px;
    min-height: 42px;
    flex: 0 0 auto;
    background: rgba(255, 255, 255, .72);
}

.tal-language-picker--nav select {
    font-size: .78rem;
}

/* Public methodology site */
.tal-auth-story__links {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 30px;
}

.tal-hero-title-line {
    display: block;
}

.tal-auth-story__links .tal-primary-button {
    width: auto;
    min-height: 46px;
    padding-inline: 19px;
}

.tal-story-text-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: rgba(255, 255, 255, .72);
    font-size: .69rem;
    font-weight: 750;
}

.tal-story-text-link:hover {
    color: #fff;
}

.tal-public-site {
    color: var(--tal-ink);
    background: var(--tal-paper);
}

.tal-public-nav {
    position: fixed;
    z-index: 1050;
    top: 0;
    right: 0;
    left: 0;
    display: flex;
    min-height: 88px;
    align-items: center;
    gap: 20px;
    padding: 0 clamp(24px, 4vw, 64px);
    border-bottom: 1px solid var(--tal-line);
    background: rgba(244, 241, 233, .94);
    box-shadow: 0 8px 30px rgba(9, 26, 36, .06);
    backdrop-filter: blur(16px);
}

.tal-public-nav .tal-brand {
    flex: 0 0 auto;
    color: var(--tal-ink);
}

.tal-public-nav .tal-brand__name {
    font-size: 1.08rem;
}

.tal-public-nav__links {
    display: flex;
    align-items: center;
    gap: clamp(16px, 1.7vw, 28px);
    margin-left: auto;
}

.tal-public-nav__links a,
.tal-public-nav__login {
    color: var(--tal-ink-soft);
    font-size: .82rem;
    font-weight: 750;
}

.tal-public-nav__links a:hover,
.tal-public-nav__login:hover {
    color: var(--tal-ink);
}

.tal-public-nav__login {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    padding: 10px 13px;
    border: 1px solid var(--tal-ink);
    border-radius: 9px;
    color: var(--tal-ink);
}

.tal-public-content {
    width: min(1440px, calc(100% - 48px));
    margin: 0 auto;
}

.tal-public-content > section {
    padding: clamp(72px, 9vw, 140px) 0;
    border-bottom: 1px solid var(--tal-line);
    scroll-margin-top: 88px;
}

.tal-public-heading {
    display: grid;
    align-items: start;
    gap: 28px;
    grid-template-columns: minmax(160px, .35fr) minmax(420px, 1.2fr) minmax(280px, .65fr);
}

.tal-public-heading h2,
.tal-section-kicker h2,
.tal-application-copy h2,
.tal-governance-section h2,
.tal-public-cta h2 {
    margin: 0;
    letter-spacing: -.045em;
    font-size: clamp(2.2rem, 4.4vw, 4.8rem);
    font-weight: 730;
    line-height: 1.02;
}

.tal-public-heading > p:last-child,
.tal-section-kicker > p:last-child,
.tal-section-kicker--split > p,
.tal-application-copy > p:last-child,
.tal-governance-section > div:last-child > p {
    margin: 4px 0 0;
    color: var(--tal-ink-soft);
    font-size: 1.02rem;
    line-height: 1.72;
}

.tal-public-outcomes {
    display: grid;
    margin-top: clamp(48px, 7vw, 96px);
    border-top: 1px solid var(--tal-line);
    border-bottom: 1px solid var(--tal-line);
    grid-template-columns: repeat(4, 1fr);
}

.tal-public-outcomes article {
    min-height: 230px;
    padding: 28px;
}

.tal-public-outcomes article + article {
    border-left: 1px solid var(--tal-line);
}

.tal-public-outcomes span,
.tal-method-cycle > li > span,
.tal-playbook-grid__number {
    color: var(--tal-coral);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .76rem;
    font-weight: 800;
}

.tal-public-outcomes h3,
.tal-method-cycle h3,
.tal-evidence-grid h3,
.tal-application-grid h3,
.tal-playbook-grid h3 {
    margin: 54px 0 9px;
    letter-spacing: -.025em;
    font-size: 1.24rem;
    font-weight: 770;
}

.tal-public-outcomes p,
.tal-method-cycle p,
.tal-evidence-grid p,
.tal-application-grid p,
.tal-playbook-grid p {
    margin: 0;
    color: var(--tal-ink-soft);
    font-size: .88rem;
    line-height: 1.62;
}

.tal-public-programme {
    position: relative;
    overflow: hidden;
}

.tal-public-programme::before {
    position: absolute;
    z-index: 0;
    top: 66px;
    right: 0;
    width: clamp(180px, 28vw, 420px);
    height: clamp(180px, 28vw, 420px);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 255, 58, .22), rgba(200, 255, 58, 0) 70%);
    content: "";
    pointer-events: none;
}

.tal-public-programme__intro,
.tal-public-programme__flow,
.tal-public-programme__boundary {
    position: relative;
    z-index: 1;
}

.tal-public-programme__intro {
    display: grid;
    align-items: start;
    gap: clamp(34px, 6vw, 92px);
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
}

.tal-public-programme__intro h2 {
    max-width: 850px;
    margin: 0;
    font-size: clamp(2.2rem, 4.4vw, 4.8rem);
    font-weight: 730;
    letter-spacing: -.045em;
    line-height: 1.02;
}

.tal-public-programme__summary > p {
    margin: 3px 0 0;
    color: var(--tal-ink-soft);
    font-size: 1.02rem;
    line-height: 1.72;
}

.tal-public-programme__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 28px;
    flex-wrap: wrap;
}

.tal-public-programme__flow {
    display: grid;
    margin: clamp(46px, 7vw, 88px) 0 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--tal-line);
    border-radius: 20px;
    background: rgba(255, 255, 255, .6);
    list-style: none;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tal-public-programme__flow li {
    min-height: 210px;
    padding: 25px;
}

.tal-public-programme__flow li + li {
    border-left: 1px solid var(--tal-line);
}

.tal-public-programme__flow b {
    color: var(--tal-coral);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .72rem;
}

.tal-public-programme__flow strong {
    display: block;
    margin: 48px 0 9px;
    font-size: 1.05rem;
    letter-spacing: -.025em;
}

.tal-public-programme__flow p {
    margin: 0;
    color: var(--tal-ink-soft);
    font-size: .78rem;
    line-height: 1.62;
}

.tal-public-programme__boundary {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 16px 0 0;
    padding: 15px 17px;
    border: 1px solid #dce6c6;
    border-radius: 13px;
    color: #48594f;
    background: #f3f9e7;
    font-size: .72rem;
    line-height: 1.55;
}

.tal-public-programme__boundary i {
    margin-top: 2px;
    color: #3d765f;
}

.tal-section-kicker {
    display: grid;
    align-items: start;
    gap: 28px;
    grid-template-columns: minmax(160px, .32fr) minmax(420px, 1.25fr) minmax(280px, .65fr);
}

.tal-method-cycle {
    display: grid;
    margin: clamp(52px, 7vw, 100px) 0 0;
    padding: 0;
    border-top: 1px solid var(--tal-line);
    list-style: none;
    grid-template-columns: repeat(3, 1fr);
}

.tal-method-cycle li {
    display: grid;
    min-height: 190px;
    gap: 20px;
    padding: 28px;
    border-bottom: 1px solid var(--tal-line);
    grid-template-columns: 32px 1fr;
}

.tal-method-cycle li:not(:nth-child(3n + 1)) {
    border-left: 1px solid var(--tal-line);
}

.tal-method-cycle h3 {
    margin: 0 0 9px;
}

.tal-section-kicker--split {
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, .62fr);
}

.tal-section-kicker--split > div .tal-eyebrow {
    margin-bottom: 12px;
}

.tal-evidence-grid {
    display: grid;
    gap: 12px;
    margin-top: clamp(48px, 6vw, 82px);
    grid-template-columns: repeat(4, 1fr);
}

.tal-evidence-grid article {
    min-height: 270px;
    padding: 25px;
    border: 1px solid var(--tal-line);
    border-radius: 16px;
    background: rgba(255, 255, 255, .58);
}

.tal-evidence-grid__icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    margin-bottom: 48px;
    border-radius: 12px;
    color: var(--tal-night);
    background: #e4f3f5;
}

.tal-evidence-grid article:nth-child(2) .tal-evidence-grid__icon { background: #edf9c9; }
.tal-evidence-grid article:nth-child(3) .tal-evidence-grid__icon { background: #fae5df; }
.tal-evidence-grid article:nth-child(4) .tal-evidence-grid__icon { background: #e9e9e0; }

.tal-evidence-grid small,
.tal-application-grid small,
.tal-playbook-grid small {
    color: #879197;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .7rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.tal-evidence-grid h3 {
    margin: 12px 0 9px;
}

.tal-maturity-section {
    position: relative;
}

.tal-framework-status {
    display: grid;
    align-items: center;
    gap: 24px;
    margin-top: clamp(40px, 5vw, 72px);
    padding: 20px 24px;
    border: 1px solid rgba(222, 101, 78, .28);
    border-radius: 16px;
    background: rgba(250, 229, 223, .5);
    grid-template-columns: max-content minmax(0, 1fr);
}

.tal-framework-status span {
    padding: 7px 10px;
    border-radius: 18px;
    color: #7f3428;
    background: #f5cfc4;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.tal-framework-status p {
    margin: 0;
    color: var(--tal-ink-soft);
    font-size: .88rem;
    line-height: 1.65;
}

.tal-maturity-ladder {
    display: grid;
    gap: 12px;
    margin: clamp(32px, 5vw, 64px) 0 0;
    padding: 0;
    list-style: none;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tal-maturity-ladder li {
    position: relative;
    display: grid;
    min-height: 230px;
    align-content: space-between;
    gap: 30px;
    overflow: hidden;
    padding: 24px;
    border: 1px solid var(--tal-line);
    border-radius: 18px;
    background: rgba(255, 255, 255, .58);
}

.tal-maturity-ladder li::after {
    position: absolute;
    right: -30px;
    bottom: -46px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    opacity: calc(.08 + (var(--tal-level, 0) * .014));
    background: var(--tal-level-colour, var(--tal-sky));
    content: "";
}

.tal-maturity-ladder li:nth-child(1) { --tal-level: 0; --tal-level-colour: #98a3a7; }
.tal-maturity-ladder li:nth-child(2) { --tal-level: 1; --tal-level-colour: #8fa9ae; }
.tal-maturity-ladder li:nth-child(3) { --tal-level: 2; --tal-level-colour: #77b8c2; }
.tal-maturity-ladder li:nth-child(4) { --tal-level: 3; --tal-level-colour: #66b2b7; }
.tal-maturity-ladder li:nth-child(5) { --tal-level: 4; --tal-level-colour: #a7c452; }
.tal-maturity-ladder li:nth-child(6) { --tal-level: 5; --tal-level-colour: #c3db70; }
.tal-maturity-ladder li:nth-child(7) { --tal-level: 6; --tal-level-colour: #df916f; }
.tal-maturity-ladder li:nth-child(8) { --tal-level: 7; --tal-level-colour: #de654e; }

.tal-maturity-ladder li > span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid var(--tal-line);
    border-radius: 50%;
    color: var(--tal-ink);
    background: color-mix(in srgb, var(--tal-level-colour) 24%, white);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .74rem;
    font-weight: 850;
}

.tal-maturity-ladder strong {
    display: block;
    letter-spacing: -.02em;
    font-size: 1.02rem;
    line-height: 1.32;
}

.tal-maturity-ladder p {
    margin: 9px 0 0;
    color: var(--tal-ink-soft);
    font-size: .82rem;
    line-height: 1.62;
}

.tal-framework-logic {
    display: grid;
    align-items: center;
    gap: 18px;
    margin-top: 22px;
    padding: clamp(24px, 4vw, 42px);
    border-radius: 20px;
    color: #fff;
    background: var(--tal-night);
    grid-template-columns: 1fr 26px 1fr 26px 1fr;
}

.tal-framework-logic div {
    min-height: 104px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 14px;
    background: rgba(255, 255, 255, .035);
}

.tal-framework-logic small,
.tal-framework-logic strong {
    display: block;
}

.tal-framework-logic small {
    color: var(--tal-acid);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .65rem;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.tal-framework-logic strong {
    margin-top: 16px;
    font-size: 1rem;
    line-height: 1.4;
}

.tal-framework-logic > i {
    color: var(--tal-acid);
    text-align: center;
}

.tal-team-360 {
    display: grid;
    gap: clamp(34px, 5vw, 76px);
    margin-top: clamp(52px, 7vw, 96px);
    padding: clamp(32px, 5vw, 64px);
    border: 1px solid var(--tal-line);
    border-radius: 24px;
    background: rgba(255, 255, 255, .56);
    grid-template-columns: minmax(260px, .72fr) minmax(480px, 1.28fr);
}

.tal-team-360__intro h3 {
    margin: 14px 0 18px;
    letter-spacing: -.035em;
    font-size: clamp(1.7rem, 3vw, 3.15rem);
    line-height: 1.07;
}

.tal-team-360__intro > p:last-child {
    margin: 0;
    color: var(--tal-ink-soft);
    font-size: .94rem;
    line-height: 1.72;
}

.tal-team-360__steps {
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--tal-line);
    list-style: none;
}

.tal-team-360__steps li {
    display: grid;
    gap: 17px;
    padding: 20px 0;
    border-bottom: 1px solid var(--tal-line);
    grid-template-columns: 34px minmax(0, 1fr);
}

.tal-team-360__steps li > span {
    color: var(--tal-coral);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .7rem;
    font-weight: 800;
}

.tal-team-360__steps strong {
    display: block;
    font-size: .92rem;
}

.tal-team-360__steps p {
    margin: 5px 0 0;
    color: var(--tal-ink-soft);
    font-size: .8rem;
    line-height: 1.56;
}

.tal-team-360__rules {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    grid-column: 1 / -1;
}

.tal-team-360__rules span {
    padding: 8px 11px;
    border-radius: 20px;
    color: var(--tal-night);
    background: #e7f2c6;
    font-size: .72rem;
    font-weight: 750;
}

.tal-measurement-map {
    display: grid;
    gap: clamp(40px, 6vw, 90px);
    margin-top: clamp(70px, 9vw, 130px);
    padding: clamp(35px, 5vw, 72px);
    border-radius: 24px;
    color: #fff;
    background: var(--tal-night);
    grid-template-columns: minmax(280px, .68fr) minmax(480px, 1.32fr);
}

.tal-measurement-map__intro h3 {
    margin: 14px 0 22px;
    letter-spacing: -.035em;
    font-size: clamp(1.8rem, 3vw, 3.1rem);
    line-height: 1.08;
}

.tal-measurement-map__intro p:last-child {
    color: rgba(255, 255, 255, .56);
    font-size: .95rem;
    line-height: 1.75;
}

.tal-scale-list {
    display: grid;
    border-top: 1px solid rgba(255, 255, 255, .13);
    grid-template-columns: repeat(2, 1fr);
}

.tal-scale-list article {
    display: grid;
    gap: 14px;
    padding: 20px 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .13);
    grid-template-columns: 25px 1fr;
}

.tal-scale-list article:nth-child(even) {
    border-left: 1px solid rgba(255, 255, 255, .13);
}

.tal-scale-list article > span {
    color: var(--tal-acid);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .7rem;
}

.tal-scale-list strong,
.tal-scale-list small {
    display: block;
}

.tal-scale-list strong {
    font-size: .92rem;
}

.tal-scale-list small {
    margin-top: 5px;
    color: rgba(255, 255, 255, .48);
    font-size: .76rem;
    line-height: 1.5;
}

.tal-process-timeline {
    display: grid;
    margin: clamp(55px, 7vw, 100px) 0 0;
    padding: 0;
    border: 1px solid var(--tal-line);
    border-radius: 18px;
    list-style: none;
    grid-template-columns: repeat(5, 1fr);
}

.tal-process-timeline li {
    min-height: 220px;
    padding: 25px;
}

.tal-process-timeline li + li {
    border-left: 1px solid var(--tal-line);
}

.tal-process-timeline li > span {
    display: inline-block;
    padding: 6px 9px;
    border-radius: 16px;
    color: var(--tal-night);
    background: var(--tal-acid);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .7rem;
    font-weight: 800;
}

.tal-process-timeline div {
    margin-top: 65px;
}

.tal-process-timeline strong {
    display: block;
    font-size: 1rem;
}

.tal-process-timeline p {
    margin: 8px 0 0;
    color: var(--tal-ink-soft);
    font-size: .84rem;
    line-height: 1.6;
}

.tal-application-section {
    display: grid;
    gap: clamp(50px, 7vw, 110px);
    grid-template-columns: minmax(300px, .75fr) minmax(560px, 1.25fr);
}

.tal-application-copy h2 {
    margin-top: 12px;
    font-size: clamp(2.1rem, 3.5vw, 3.8rem);
}

.tal-application-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, 1fr);
}

.tal-application-grid article {
    display: flex;
    min-height: 480px;
    flex-direction: column;
    padding: 30px;
    border-radius: 18px;
    color: #fff;
    background: var(--tal-night);
}

.tal-application-grid article:nth-child(2) {
    color: var(--tal-ink);
    background: #e7f2c6;
}

.tal-application-grid .tal-panel__symbol {
    margin-bottom: auto;
}

.tal-application-grid article:nth-child(2) .tal-panel__symbol {
    border-color: rgba(16, 32, 42, .15);
    color: var(--tal-night);
}

.tal-application-grid h3 {
    margin: 62px 0 13px;
    font-size: 1.25rem;
}

.tal-application-grid article:first-child p,
.tal-application-grid article:first-child li {
    color: rgba(255, 255, 255, .58);
}

.tal-application-grid ul {
    margin: 25px 0 0;
    padding: 18px 0 0 17px;
    border-top: 1px solid currentColor;
    opacity: .9;
}

.tal-application-grid li {
    margin-top: 8px;
    font-size: .82rem;
    line-height: 1.58;
}

.tal-featured-insight {
    display: grid;
    gap: clamp(28px, 5vw, 78px);
    margin-top: clamp(50px, 7vw, 94px);
    padding: clamp(30px, 5vw, 66px);
    border-radius: 24px;
    color: #fff;
    background: var(--tal-night);
    grid-template-columns: minmax(150px, .3fr) minmax(380px, 1fr) minmax(190px, .38fr);
}

.tal-featured-insight__meta span,
.tal-featured-insight__meta small {
    display: block;
}

.tal-featured-insight__meta span {
    color: var(--tal-acid);
    font-size: .72rem;
    font-weight: 800;
}

.tal-featured-insight__meta small {
    margin-top: 10px;
    color: rgba(255, 255, 255, .42);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .62rem;
    text-transform: uppercase;
}

.tal-featured-insight__copy h3 {
    margin: 0;
    letter-spacing: -.035em;
    font-size: clamp(1.75rem, 3vw, 3.1rem);
    line-height: 1.08;
}

.tal-featured-insight__copy p {
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .58);
    font-size: .92rem;
    line-height: 1.7;
}

.tal-featured-insight__copy a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 28px;
    color: #fff;
    font-size: .82rem;
    font-weight: 800;
}

.tal-featured-insight__copy a i {
    transform: rotate(45deg);
}

.tal-featured-insight__evidence {
    padding-left: 24px;
    border-left: 1px solid rgba(255, 255, 255, .14);
}

.tal-featured-insight__evidence p {
    margin: 0 0 18px;
    color: rgba(255, 255, 255, .44);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .64rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.tal-featured-insight__evidence a {
    display: block;
    padding: 11px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .72);
    font-size: .76rem;
    line-height: 1.4;
}

.tal-featured-insight__evidence a:hover {
    color: var(--tal-acid);
}

.tal-content-studio {
    margin-top: clamp(20px, 4vw, 48px);
    padding: clamp(28px, 4vw, 48px);
    border: 1px solid var(--tal-line);
    border-radius: var(--tal-radius);
    background: rgba(255, 255, 255, .54);
}

.tal-content-studio__grid {
    display: grid;
    gap: 14px;
    margin-top: 30px;
    grid-template-columns: minmax(300px, .72fr) minmax(460px, 1.28fr);
}

.tal-editorial-brief {
    display: flex;
    min-height: 450px;
    flex-direction: column;
    padding: 30px;
    border-radius: 18px;
    color: #fff;
    background: var(--tal-night);
}

.tal-editorial-brief__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.tal-editorial-brief__meta span {
    color: var(--tal-acid);
    font-size: .72rem;
    font-weight: 800;
}

.tal-editorial-brief__meta small {
    color: rgba(255, 255, 255, .4);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .6rem;
}

.tal-editorial-brief h3 {
    margin: 70px 0 14px;
    letter-spacing: -.03em;
    font-size: clamp(1.55rem, 2.5vw, 2.35rem);
    line-height: 1.1;
}

.tal-editorial-brief > p {
    margin: 0;
    color: rgba(255, 255, 255, .58);
    font-size: .84rem;
    line-height: 1.65;
}

.tal-editorial-brief__languages {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: auto 0 22px;
    padding-top: 28px;
}

.tal-editorial-brief__languages span {
    padding: 5px 7px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 12px;
    color: rgba(255, 255, 255, .64);
    font-size: .58rem;
    font-weight: 800;
}

.tal-editorial-brief .tal-primary-button {
    width: fit-content;
}

.tal-content-workbench {
    display: grid;
    overflow: hidden;
    border: 1px solid var(--tal-line);
    border-radius: 18px;
    background: rgba(255, 255, 255, .48);
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tal-content-workbench > a {
    display: flex;
    min-height: 148px;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    padding: 24px;
    color: var(--tal-ink);
    transition: color .16s ease, background-color .16s ease;
}

.tal-content-workbench > a:nth-child(even) {
    border-left: 1px solid var(--tal-line);
}

.tal-content-workbench > a:nth-child(n + 3) {
    border-top: 1px solid var(--tal-line);
}

.tal-content-workbench > a:hover {
    color: var(--tal-night);
    background: #e7f2c6;
    text-decoration: none;
}

.tal-content-workbench small,
.tal-content-workbench strong {
    display: block;
}

.tal-content-workbench small {
    color: #859096;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .58rem;
    text-transform: uppercase;
}

.tal-content-workbench strong {
    margin-top: 32px;
    font-size: .88rem;
    line-height: 1.4;
}

.tal-content-workbench > a > i {
    color: var(--tal-coral);
    font-size: .7rem;
}

.tal-governance-section {
    display: grid;
    gap: clamp(50px, 8vw, 130px);
    grid-template-columns: 1.1fr .9fr;
}

.tal-governance-section h2 {
    margin-top: 12px;
    font-size: clamp(2rem, 3.6vw, 4rem);
}

.tal-governance-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 30px;
}

.tal-governance-tags span {
    padding: 8px 11px;
    border: 1px solid var(--tal-line);
    border-radius: 20px;
    font-size: .76rem;
    font-weight: 750;
}

.tal-public-content > .tal-public-cta {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40px;
    border-bottom: 0;
}

.tal-public-cta > div {
    max-width: 900px;
}

.tal-public-cta h2 {
    margin-top: 13px;
    font-size: clamp(2.1rem, 4vw, 4.5rem);
}

.tal-public-cta .tal-primary-button {
    width: auto;
    flex: 0 0 auto;
    padding-inline: 22px;
}

.tal-public-content > .tal-public-contact {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
    align-items: start;
    gap: clamp(38px, 7vw, 100px);
}

.tal-public-contact__copy h2 {
    max-width: 820px;
    margin: 14px 0 22px;
    color: var(--tal-ink);
    font-size: clamp(2.2rem, 4.4vw, 4.7rem);
    font-weight: 730;
    letter-spacing: -.05em;
    line-height: .98;
}

.tal-public-contact__copy > p:last-child {
    max-width: 760px;
    margin: 0;
    color: var(--tal-muted);
    font-size: .86rem;
    line-height: 1.75;
}

.tal-public-contact__channels {
    display: grid;
    gap: 12px;
}

.tal-public-contact__channel {
    display: grid;
    gap: 11px;
    padding: 24px;
    border: 1px solid var(--tal-line);
    border-radius: 18px;
    color: var(--tal-ink);
    background: rgba(255, 255, 255, .55);
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.tal-public-contact__channel:hover {
    transform: translateY(-2px);
    border-color: rgba(68, 103, 83, .42);
    color: var(--tal-ink);
    box-shadow: 0 18px 42px rgba(11, 24, 34, .08);
    text-decoration: none;
}

.tal-public-contact__channel > span {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #65757a;
}

.tal-public-contact__channel i { color: #3f6f58; }
.tal-public-contact__channel small { font-size: .62rem; font-style: normal; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.tal-public-contact__channel strong { font-size: 1rem; line-height: 1.35; }
.tal-public-contact__channel em { color: #627279; font-size: .72rem; font-style: normal; }

.tal-public-corporate-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px 28px;
    padding: 24px max(5vw, calc((100vw - 1440px) / 2));
    color: #87969a;
    background: #07151e;
    font-size: .65rem;
    line-height: 1.5;
}

.tal-public-corporate-footer a {
    color: #c5d0d0;
    text-decoration: none;
    transition: color .18s ease;
}

.tal-public-corporate-footer a:hover { color: #caff47; }

/* Portal onboarding guide */
.tal-portal-playbook {
    padding: clamp(26px, 3.2vw, 42px);
    border: 1px solid var(--tal-line);
    border-radius: var(--tal-radius);
    background: rgba(255, 255, 255, .54);
}

.tal-playbook-grid {
    display: grid;
    margin-top: 28px;
    border-top: 1px solid var(--tal-line);
    grid-template-columns: repeat(2, 1fr);
}

.tal-playbook-grid article {
    display: grid;
    min-height: 195px;
    gap: 18px;
    padding: 25px 22px;
    border-bottom: 1px solid var(--tal-line);
    grid-template-columns: 32px 1fr;
}

.tal-playbook-grid article:nth-child(even) {
    border-left: 1px solid var(--tal-line);
}

.tal-playbook-grid h3 {
    margin: 11px 0 9px;
    font-size: .92rem;
}

html[dir="rtl"] .tal-public-heading,
html[dir="rtl"] .tal-section-kicker,
html[dir="rtl"] .tal-application-section,
html[dir="rtl"] .tal-governance-section,
html[dir="rtl"] .tal-public-outcomes,
html[dir="rtl"] .tal-method-cycle,
html[dir="rtl"] .tal-evidence-grid,
html[dir="rtl"] .tal-scale-list,
html[dir="rtl"] .tal-process-timeline,
html[dir="rtl"] .tal-application-grid,
html[dir="rtl"] .tal-playbook-grid,
html[dir="rtl"] .tal-maturity-ladder,
html[dir="rtl"] .tal-framework-logic,
html[dir="rtl"] .tal-team-360,
html[dir="rtl"] .tal-featured-insight,
html[dir="rtl"] .tal-content-studio__grid,
html[dir="rtl"] .tal-content-workbench {
    direction: rtl;
}

html[dir="rtl"] .tal-public-nav__links {
    margin-right: auto;
    margin-left: 0;
}

html[dir="rtl"] .tal-public-outcomes article + article,
html[dir="rtl"] .tal-process-timeline li + li {
    border-right: 1px solid var(--tal-line);
    border-left: 0;
}

html[dir="rtl"] .tal-method-cycle li:not(:nth-child(3n + 1)),
html[dir="rtl"] .tal-scale-list article:nth-child(even),
html[dir="rtl"] .tal-playbook-grid article:nth-child(even),
html[dir="rtl"] .tal-content-workbench > a:nth-child(even) {
    border-right: 1px solid var(--tal-line);
    border-left: 0;
}

html[dir="rtl"] .tal-featured-insight__evidence {
    padding-right: 24px;
    padding-left: 0;
    border-right: 1px solid rgba(255, 255, 255, .14);
    border-left: 0;
}

/* Optional dark portal theme */
body.tal-portal-page[data-tal-theme="dark"] {
    --tal-ink: #edf2ed;
    --tal-ink-soft: #a8b2b5;
    --tal-paper: #0e1d26;
    --tal-surface: #152630;
    --tal-line: rgba(255, 255, 255, .12);
    background: var(--tal-paper);
}

body.tal-portal-page[data-tal-theme="dark"] .tal-topbar {
    border-color: var(--tal-line);
    background: rgba(14, 29, 38, .9);
}

body.tal-portal-page[data-tal-theme="dark"] .tal-icon-button,
body.tal-portal-page[data-tal-theme="dark"] .tal-logout-button,
body.tal-portal-page[data-tal-theme="dark"] .tal-operating-strip,
body.tal-portal-page[data-tal-theme="dark"] .tal-panel,
body.tal-portal-page[data-tal-theme="dark"] .tal-module-card,
body.tal-portal-page[data-tal-theme="dark"] .tal-content-studio,
body.tal-portal-page[data-tal-theme="dark"] .tal-content-workbench {
    color: var(--tal-ink);
    background: rgba(255, 255, 255, .035);
}

body.tal-portal-page[data-tal-theme="dark"] .tal-module-card:hover,
body.tal-portal-page[data-tal-theme="dark"] .tal-secondary-button:hover {
    color: var(--tal-ink);
    background: rgba(255, 255, 255, .08);
}

body.tal-portal-page[data-tal-theme="dark"] .tal-breadcrumb strong,
body.tal-portal-page[data-tal-theme="dark"] .tal-secondary-button,
body.tal-portal-page[data-tal-theme="dark"] .tal-journey a {
    color: var(--tal-ink);
}

body.tal-portal-page[data-tal-theme="dark"] .tal-operating-strip__icon,
body.tal-portal-page[data-tal-theme="dark"] .tal-module-card__icon {
    color: #0b1822;
}

@keyframes talFadeUp {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes talLoader {
    from { opacity: .45; transform: scaleY(.55); }
    to { opacity: 1; transform: scaleY(1); }
}

@media (max-width: 1280px) {
    .tal-auth-shell {
        grid-template-columns: minmax(0, 1fr) minmax(420px, .82fr);
    }

    .tal-auth-story__content h1 {
        font-size: clamp(3rem, 5.2vw, 5rem);
    }

    .tal-operating-strip {
        grid-template-columns: repeat(2, 1fr);
    }

    .tal-operating-strip article:nth-child(3) {
        border-top: 1px solid var(--tal-line);
        border-left: 0;
    }

    .tal-operating-strip article:nth-child(4) {
        border-top: 1px solid var(--tal-line);
    }

    .tal-module-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tal-public-nav__links {
        gap: 15px;
    }

    .tal-public-heading,
    .tal-section-kicker {
        grid-template-columns: minmax(130px, .3fr) minmax(400px, 1.2fr) minmax(250px, .62fr);
    }

    .tal-evidence-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .tal-maturity-ladder {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tal-featured-insight {
        grid-template-columns: minmax(120px, .3fr) minmax(360px, 1fr);
    }

    .tal-featured-insight__evidence {
        padding: 24px 0 0;
        border-top: 1px solid rgba(255, 255, 255, .14);
        border-left: 0;
        grid-column: 1 / -1;
    }

    .tal-process-timeline {
        grid-template-columns: repeat(3, 1fr);
    }

    .tal-process-timeline li:nth-child(4) {
        border-top: 1px solid var(--tal-line);
        border-left: 0;
    }

    .tal-process-timeline li:nth-child(5) {
        border-top: 1px solid var(--tal-line);
    }
}

@media (max-width: 1024px) {
    .tal-auth-shell {
        grid-template-columns: 1fr;
    }

    .tal-auth-story {
        min-height: auto;
        padding-bottom: 52px;
    }

    .tal-auth-story__content {
        margin: 90px 0 55px;
    }

    .tal-auth-story__content h1 {
        font-size: clamp(3rem, 9vw, 5.8rem);
    }

    .tal-auth-access {
        min-height: auto;
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .tal-sidebar {
        width: min(88vw, var(--tal-sidebar-width));
        transform: translateX(-102%);
        transition: transform .24s ease;
    }

    body.tal-sidebar-is-open .tal-sidebar {
        transform: translateX(0);
    }

    .tal-sidebar__close,
    .tal-sidebar__open {
        display: inline-grid;
    }

    .tal-sidebar-backdrop {
        position: fixed;
        z-index: 1030;
        inset: 0;
        display: block;
        visibility: hidden;
        border: 0;
        opacity: 0;
        background: rgba(5, 15, 21, .56);
        transition: opacity .2s ease, visibility .2s ease;
    }

    body.tal-sidebar-is-open .tal-sidebar-backdrop {
        visibility: visible;
        opacity: 1;
    }

    .tal-portal-main {
        margin-left: 0;
    }

    .tal-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .tal-panel--principle {
        min-height: 390px;
    }

    .tal-public-nav__links {
        display: none;
    }

    .tal-language-picker--nav {
        margin-left: auto;
    }

    .tal-public-nav__login {
        margin-left: 0;
    }

    html[dir="rtl"] .tal-language-picker--nav {
        margin-right: auto;
        margin-left: 0;
    }

    html[dir="rtl"] .tal-public-nav__login {
        margin-right: 0;
    }

    .tal-public-heading,
    .tal-section-kicker,
    .tal-section-kicker--split,
    .tal-application-section,
    .tal-governance-section {
        grid-template-columns: 1fr;
    }

    .tal-public-outcomes,
    .tal-method-cycle {
        grid-template-columns: repeat(2, 1fr);
    }

    .tal-public-outcomes article:nth-child(3) {
        border-top: 1px solid var(--tal-line);
        border-left: 0;
    }

    .tal-public-outcomes article:nth-child(4) {
        border-top: 1px solid var(--tal-line);
    }

    .tal-method-cycle li:nth-child(3n + 1) {
        border-left: 1px solid var(--tal-line);
    }

    .tal-method-cycle li:nth-child(odd) {
        border-left: 0;
    }

    .tal-measurement-map {
        grid-template-columns: 1fr;
    }

    .tal-team-360,
    .tal-content-studio__grid {
        grid-template-columns: 1fr;
    }

    .tal-framework-logic {
        grid-template-columns: 1fr;
    }

    .tal-framework-logic > i {
        transform: rotate(90deg);
    }
}

@media (max-width: 720px) {
    .tal-auth-story,
    .tal-auth-access {
        padding: 24px;
    }

    .tal-brand__name {
        font-size: .8rem;
    }

    .tal-auth-story__content {
        margin: 74px 0 48px;
    }

    .tal-auth-story__content h1 {
        font-size: clamp(2.65rem, 13vw, 4.2rem);
    }

    .tal-programme-spotlight {
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 14px;
    }

    .tal-programme-spotlight__status {
        width: max-content;
        grid-column: 1 / -1;
    }

    .tal-auth-story__links {
        align-items: flex-start;
        flex-direction: column;
    }

    .tal-auth-method {
        gap: 13px;
        grid-template-columns: 1fr;
    }

    .tal-auth-method article,
    .tal-auth-method article + article {
        padding: 13px 0 0;
        border: 0;
        border-top: 1px solid rgba(255, 255, 255, .1);
    }

    .tal-auth-story__footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .tal-auth-access {
        padding-top: 42px;
        padding-bottom: 42px;
    }

    .tal-auth-card {
        padding: 30px 24px;
        border-radius: 20px;
    }

    .tal-topbar {
        min-height: 66px;
        padding: 0 16px;
    }

    .tal-breadcrumb span,
    .tal-breadcrumb i,
    .tal-topbar__actions .tal-icon-button:nth-of-type(2),
    .tal-logout-button span {
        display: none;
    }

    .tal-logout-button {
        width: 38px;
        padding: 0;
        justify-content: center;
    }

    .tal-main-content {
        padding: 18px;
    }

    .tal-dashboard-hero {
        min-height: 470px;
        align-items: stretch;
        flex-direction: column;
        justify-content: flex-end;
        padding: 27px;
    }

    .tal-dashboard-hero__actions {
        min-width: 0;
    }

    .tal-operating-strip {
        grid-template-columns: 1fr;
    }

    .tal-operating-strip article + article,
    .tal-operating-strip article:nth-child(3) {
        border-top: 1px solid var(--tal-line);
        border-left: 0;
    }

    .tal-panel__heading,
    .tal-section-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .tal-section-heading > p {
        text-align: left;
    }

    .tal-journey li {
        gap: 10px;
        grid-template-columns: 28px minmax(0, 1fr) 34px;
    }

    .tal-module-grid {
        grid-template-columns: 1fr;
    }

    .tal-module-card {
        min-height: 150px;
    }

    .tal-language-picker--portal {
        min-width: 58px;
    }

    .tal-language-picker--portal > i:first-child {
        display: none;
    }

    .tal-public-nav {
        min-height: 66px;
        padding: 0 18px;
    }

    .tal-auth-page {
        padding-top: 66px;
    }

    .tal-auth-access,
    .tal-public-content > section {
        scroll-margin-top: 66px;
    }

    .tal-language-picker--nav {
        min-width: 68px;
    }

    .tal-public-nav .tal-brand__name,
    .tal-public-nav__login {
        display: none;
    }

    .tal-public-content {
        width: min(100% - 36px, 1440px);
    }

    .tal-public-content > section {
        padding: 68px 0;
    }

    .tal-public-heading,
    .tal-section-kicker {
        gap: 20px;
    }

    .tal-public-heading h2,
    .tal-section-kicker h2,
    .tal-application-copy h2,
    .tal-governance-section h2,
    .tal-public-cta h2 {
        font-size: clamp(2rem, 10vw, 3.2rem);
    }

    .tal-public-outcomes,
    .tal-method-cycle,
    .tal-evidence-grid,
    .tal-scale-list,
    .tal-process-timeline,
    .tal-application-grid,
    .tal-playbook-grid,
    .tal-maturity-ladder,
    .tal-featured-insight,
    .tal-content-workbench {
        grid-template-columns: 1fr;
    }

    .tal-framework-status {
        align-items: start;
        grid-template-columns: 1fr;
    }

    .tal-maturity-ladder li {
        min-height: 190px;
    }

    .tal-team-360 {
        margin-inline: -18px;
        padding: 35px 22px;
        border-radius: 0;
    }

    .tal-featured-insight {
        padding: 30px 24px;
    }

    .tal-featured-insight__evidence,
    html[dir="rtl"] .tal-featured-insight__evidence {
        padding: 24px 0 0;
        border: 0;
        border-top: 1px solid rgba(255, 255, 255, .14);
        grid-column: auto;
    }

    .tal-content-studio {
        padding: 25px 20px;
    }

    .tal-content-workbench > a,
    .tal-content-workbench > a:nth-child(even),
    html[dir="rtl"] .tal-content-workbench > a:nth-child(even) {
        min-height: 120px;
        border-right: 0;
        border-left: 0;
    }

    .tal-content-workbench > a + a {
        border-top: 1px solid var(--tal-line);
    }

    .tal-public-outcomes article,
    .tal-public-outcomes article + article,
    .tal-public-outcomes article:nth-child(3),
    .tal-method-cycle li,
    .tal-method-cycle li:nth-child(3n + 1),
    .tal-method-cycle li:nth-child(odd),
    .tal-process-timeline li,
    .tal-process-timeline li + li,
    .tal-process-timeline li:nth-child(4),
    .tal-process-timeline li:nth-child(5),
    .tal-scale-list article:nth-child(even),
    .tal-playbook-grid article:nth-child(even) {
        border-top: 1px solid var(--tal-line);
        border-right: 0;
        border-left: 0;
    }

    .tal-public-outcomes article:first-child,
    .tal-method-cycle li:first-child,
    .tal-process-timeline li:first-child {
        border-top: 0;
    }

    .tal-measurement-map {
        margin-inline: -18px;
        padding: 35px 22px;
        border-radius: 0;
    }

    .tal-process-timeline div {
        margin-top: 40px;
    }

    .tal-application-grid article {
        min-height: 390px;
    }

    .tal-public-content > .tal-public-cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .tal-public-content > .tal-public-contact {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .tal-public-contact__copy h2 {
        font-size: clamp(2rem, 10vw, 3.2rem);
    }

    .tal-public-corporate-footer {
        align-items: flex-start;
        flex-direction: column;
        padding: 24px 18px;
    }

    .tal-playbook-grid article {
        min-height: 0;
        padding-inline: 0;
    }

    .tal-portal-footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

.tal-invitation-page {
  min-height: calc(100vh - 170px);
}

.tal-invitation-card {
  width: min(760px, 100%);
  margin: 42px auto 0;
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(13, 34, 45, .12);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(13, 34, 45, .1);
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 24px;
}

.tal-invitation-card__icon {
  width: 64px;
  height: 64px;
  border-radius: 20px;
  background: #d2ff55;
  color: #0d222d;
  display: grid;
  place-items: center;
  font-size: 24px;
}

.tal-invitation-card.is-blocked .tal-invitation-card__icon {
  background: #f0eee8;
}

.tal-invitation-card h2 {
  margin: 5px 0 12px;
  color: #0d222d;
  font-size: clamp(28px, 4vw, 42px);
}

.tal-invitation-card p {
  color: #52616a;
  line-height: 1.65;
}

.tal-invitation-card dl {
  margin: 24px 0;
  padding: 18px 0;
  border-top: 1px solid rgba(13, 34, 45, .1);
  border-bottom: 1px solid rgba(13, 34, 45, .1);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.tal-invitation-card dt {
  color: #77838a;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tal-invitation-card dd {
  margin: 5px 0 0;
  color: #0d222d;
  font-weight: 800;
}

.tal-invitation-card__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.tal-invitation-card__actions form {
  margin: 0;
}

.tal-profile-grid {
  margin-top: 28px;
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: 20px;
}

.tal-profile-card {
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid rgba(13, 34, 45, .12);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(13, 34, 45, .07);
}

.tal-profile-card--teams { grid-column: 1 / -1; }
.tal-profile-identity { display: flex; align-items: center; gap: 16px; padding-bottom: 22px; border-bottom: 1px solid var(--tal-line); }
.tal-profile-avatar { display: grid; width: 58px; height: 58px; flex: 0 0 58px; place-items: center; border-radius: 18px; color: var(--tal-night); background: var(--tal-lime); font-size: 1.25rem; font-weight: 900; }
.tal-profile-identity h2 { margin: 3px 0 4px; font-size: 1.35rem; }
.tal-profile-identity span:not(.tal-profile-avatar) { color: var(--tal-ink-soft); font-size: .78rem; overflow-wrap: anywhere; }
.tal-profile-facts { margin: 20px 0; display: grid; gap: 0; }
.tal-profile-facts > div { padding: 12px 0; border-bottom: 1px solid var(--tal-line); }
.tal-profile-facts dt { color: var(--tal-ink-soft); font-size: .64rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.tal-profile-facts dd { margin: 5px 0 0; color: var(--tal-night); font-size: .76rem; font-weight: 800; overflow-wrap: anywhere; }
.tal-profile-facts dd i { color: #2e8b57; }
.tal-profile-form__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.tal-profile-team-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; }
.tal-profile-team-list a { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 14px; padding: 16px; border: 1px solid var(--tal-line); border-radius: 14px; color: var(--tal-night); background: #fafbf8; text-decoration: none; transition: border-color .2s ease, transform .2s ease; }
.tal-profile-team-list a:hover { border-color: #91a27d; transform: translateY(-1px); }
.tal-profile-team-list strong, .tal-profile-team-list small { display: block; }
.tal-profile-team-list strong { font-size: .82rem; }
.tal-profile-team-list small { margin-top: 5px; color: var(--tal-ink-soft); font-size: .64rem; }
.tal-count-pill { display: inline-grid; min-width: 32px; height: 32px; place-items: center; border-radius: 999px; color: var(--tal-night); background: var(--tal-lime); font-weight: 900; }

@media (max-width: 640px) {
  .tal-invitation-card {
    grid-template-columns: 1fr;
  }

  .tal-invitation-card dl {
    grid-template-columns: 1fr;
  }

  .tal-profile-grid, .tal-profile-form__row { grid-template-columns: 1fr; }
  .tal-profile-card--teams { grid-column: auto; }
}

.tal-invitation-entry-page {
  padding-top: 0;
  background:
    radial-gradient(circle at 82% 18%, rgba(215, 255, 104, .2), transparent 28%),
    linear-gradient(135deg, #f7f4ec 0%, #eeece4 100%);
}

.tal-invitation-entry__topbar {
  width: 100%;
  min-height: 82px;
  padding: 18px clamp(22px, 5vw, 72px);
  border-bottom: 1px solid var(--tal-line);
  background: rgba(247, 244, 236, .88);
  backdrop-filter: blur(18px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.tal-invitation-entry__security {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--tal-ink-soft);
  font-size: .78rem;
  font-weight: 800;
}

.tal-invitation-entry {
  width: min(1180px, calc(100% - 40px));
  min-height: calc(100vh - 82px);
  margin: 0 auto;
  padding: clamp(48px, 8vw, 100px) 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(390px, .78fr);
  align-items: center;
  gap: clamp(42px, 8vw, 104px);
}

.tal-invitation-entry__story h1 {
  max-width: 720px;
  margin: 0 0 22px;
  color: var(--tal-night);
  font-size: clamp(3.2rem, 7vw, 6.8rem);
  font-weight: 850;
  letter-spacing: -.075em;
  line-height: .9;
}

.tal-invitation-entry__story > p:not(.tal-eyebrow) {
  max-width: 650px;
  color: var(--tal-ink-soft);
  font-size: clamp(1rem, 1.6vw, 1.22rem);
  line-height: 1.7;
}

.tal-invitation-entry__steps {
  max-width: 690px;
  margin: 38px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0;
}

.tal-invitation-entry__steps li {
  padding: 18px 0;
  border-top: 1px solid var(--tal-line);
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 16px;
}

.tal-invitation-entry__steps li > span {
  color: var(--tal-coral);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .1em;
}

.tal-invitation-entry__steps strong,
.tal-invitation-entry__steps small {
  display: block;
}

.tal-invitation-entry__steps strong {
  color: var(--tal-ink);
  font-size: .94rem;
}

.tal-invitation-entry__steps small {
  margin-top: 5px;
  color: var(--tal-ink-soft);
  font-size: .8rem;
  line-height: 1.55;
}

.tal-invitation-entry__card {
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(16, 32, 42, .1);
  border-radius: var(--tal-radius-lg);
  background: rgba(255, 255, 255, .94);
  box-shadow: var(--tal-shadow);
}

.tal-invitation-entry__icon {
  width: 58px;
  height: 58px;
  margin-bottom: 28px;
  border-radius: 18px;
  color: var(--tal-night);
  background: var(--tal-acid);
  display: grid;
  place-items: center;
  font-size: 1.15rem;
}

.tal-invitation-entry__card h2 {
  margin: 0 0 22px;
  color: var(--tal-night);
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  letter-spacing: -.045em;
}

.tal-invitation-entry__card dl {
  margin: 0 0 24px;
  border-top: 1px solid var(--tal-line);
}

.tal-invitation-entry__card dl > div {
  padding: 13px 0;
  border-bottom: 1px solid var(--tal-line);
  display: grid;
  grid-template-columns: minmax(120px, .7fr) minmax(0, 1fr);
  gap: 16px;
}

.tal-invitation-entry__card dt {
  color: var(--tal-ink-soft);
  font-size: .67rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tal-invitation-entry__card dd {
  margin: 0;
  color: var(--tal-ink);
  font-size: .82rem;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.tal-invitation-entry__guidance {
  margin: 22px 0;
  color: var(--tal-ink-soft);
  font-size: .86rem;
  line-height: 1.65;
}

.tal-invitation-entry__primary,
.tal-invitation-entry__secondary {
  width: 100%;
  margin-top: 10px;
}

@media (max-width: 900px) {
  .tal-invitation-entry {
    grid-template-columns: 1fr;
  }

  .tal-invitation-entry__story h1 {
    font-size: clamp(3rem, 14vw, 6rem);
  }
}

@media (max-width: 560px) {
  .tal-invitation-entry__security {
    display: none;
  }

  .tal-invitation-entry {
    width: min(100% - 24px, 1180px);
    padding-top: 34px;
  }

  .tal-invitation-entry__card dl > div {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}

/* Account creation, verification and profile security */
.tal-account-nav__actions { display: flex; align-items: center; gap: 14px; }
.tal-account-auth-shell { min-height: 100vh; }
.tal-account-auth-story { min-height: 760px; }
.tal-auth-access--account { align-items: flex-start; padding-top: clamp(110px, 10vw, 150px); padding-bottom: 70px; }
.tal-auth-card--account { width: min(100%, 660px); }
.tal-account-trust-list { display: grid; gap: 10px; margin-top: 38px; }
.tal-account-trust-list article { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; align-items: start; padding: 13px 0; border-top: 1px solid rgba(255, 255, 255, .1); }
.tal-account-trust-list article > i { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(210, 255, 85, .24); border-radius: 10px; color: var(--tal-acid); background: rgba(210, 255, 85, .06); }
.tal-account-trust-list strong,
.tal-account-trust-list small { display: block; }
.tal-account-trust-list strong { color: #fff; font-size: .78rem; }
.tal-account-trust-list small { margin-top: 4px; color: rgba(255, 255, 255, .48); font-size: .66rem; line-height: 1.5; }
.tal-account-form { margin-top: 28px; }
.tal-account-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
.tal-account-form-wide { grid-column: 1 / -1; }
.tal-account-form .tal-primary-button { width: 100%; border: 0; }
.tal-account-form .tal-field { min-width: 0; }
.tal-field input[readonly] { color: #46565d; border-color: #dce5cf; background: #f3f7e9; cursor: not-allowed; }
.tal-field-hint { display: flex; align-items: center; gap: 6px; margin-top: 6px; color: #68776a; font-size: .65rem; line-height: 1.4; }
.tal-field-hint i { color: #6a851c; }
.tal-account-inline-status { display: block; margin-top: 10px; color: #296d4d; font-size: .72rem; font-weight: 750; }
.tal-account-auth-page .tal-auth-step .tal-auth-card__index { margin-top: 16px; }
.tal-account-auth-page .tal-auth-step > .tal-primary-button,
.tal-password-success .tal-primary-button { display: flex; width: 100%; justify-content: space-between; border: 0; text-decoration: none; }
.tal-password-success { text-align: center; }
.tal-password-success__icon { display: grid; width: 62px; height: 62px; margin: 8px auto 20px; place-items: center; border-radius: 19px; color: var(--tal-night); background: var(--tal-acid); font-size: 1.3rem; }
.tal-password-success p { margin-bottom: 25px; }

.tal-account-console { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(300px, .75fr); gap: 22px; }
.tal-account-profile-panel,
.tal-account-security-panel { padding: clamp(22px, 3vw, 34px); border: 1px solid #e0e5df; border-radius: 20px; background: #fff; }
.tal-account-security-panel { align-self: start; }
.tal-account-panel-heading { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 15px; align-items: start; margin-bottom: 28px; }
.tal-account-panel-heading--compact { margin-bottom: 20px; }
.tal-account-panel-icon { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 13px; color: var(--tal-night); background: var(--tal-acid); }
.tal-account-panel-heading h2 { margin: 2px 0 7px; color: var(--tal-ink); font-size: clamp(1.2rem, 2vw, 1.55rem); letter-spacing: -.025em; }
.tal-account-panel-heading p:last-child { margin: 0; color: #6c7a80; font-size: .72rem; line-height: 1.6; }
.tal-account-generated-form .addNewInputs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.tal-account-generated-form .form-group,
.tal-account-generated-form .field-wrapper,
.tal-account-generated-form .input-group { min-width: 0; margin: 0; }
.tal-account-generated-form label,
.tal-account-generated-form .field-placeholder { display: block; margin: 0 0 7px; color: #53636a; font-size: .67rem; font-weight: 800; }
.tal-account-generated-form input,
.tal-account-generated-form select { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid #d6ddd7; border-radius: 11px; outline: 0; color: var(--tal-ink); background: #fafbf8; font-size: .78rem; box-shadow: none; }
.tal-account-generated-form input:focus,
.tal-account-generated-form select:focus { border-color: var(--tal-night); background: #fff; box-shadow: 0 0 0 4px rgba(16, 32, 42, .07); }
.tal-account-generated-form .buttonClassic,
.tal-account-generated-form button[type="submit"],
.tal-account-generated-form input[type="submit"] { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 0 22px; border: 0; border-radius: 11px; color: var(--tal-night) !important; background: var(--tal-acid) !important; font-size: .72rem; font-weight: 850; text-decoration: none; cursor: pointer; }
.tal-account-generated-form .addNewInputs > .buttonClassic,
.tal-account-generated-form .addNewInputs > button,
.tal-account-generated-form .addNewInputs > input[type="submit"] { grid-column: 1 / -1; justify-self: start; }
.tal-account-form-note { display: flex; gap: 10px; margin-top: 24px; padding: 14px 16px; border-radius: 13px; color: #54646a; background: #f0f3ef; }
.tal-account-form-note i { margin-top: 2px; color: #527764; }
.tal-account-form-note span { font-size: .67rem; line-height: 1.6; }
.tal-account-security-action { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 12px; align-items: center; margin-top: 10px; padding: 15px; border: 1px solid #e1e6df; border-radius: 14px; color: var(--tal-ink); background: #fafbf8; text-decoration: none; transition: border-color .16s ease, transform .16s ease; }
.tal-account-security-action:hover { color: var(--tal-ink); border-color: #b7cc78; transform: translateY(-1px); }
.tal-account-security-action__icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: #51686e; background: #eaf0eb; }
.tal-account-security-action strong,
.tal-account-security-action small { display: block; }
.tal-account-security-action strong { font-size: .7rem; line-height: 1.4; }
.tal-account-security-action small { margin-top: 4px; color: #758187; font-size: .6rem; line-height: 1.45; }
.tal-account-security-action > i { color: #8a9699; font-size: .68rem; }
.tal-account-security-facts { display: grid; gap: 12px; margin-top: 24px; padding-top: 20px; border-top: 1px solid #e6eae5; }
.tal-account-security-facts > div { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 9px; align-items: start; }
.tal-account-security-facts > div > i { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: #346b51; background: #e1f1e7; font-size: .55rem; }
.tal-account-security-facts strong,
.tal-account-security-facts small { display: block; }
.tal-account-security-facts strong { font-size: .65rem; }
.tal-account-security-facts small { margin-top: 3px; color: #778389; font-size: .58rem; line-height: 1.45; }
.tal-member-invite-feedback { margin: 16px 0 0; }
.tal-member-invite-panel { scroll-margin-top: 100px; }

@media (max-width: 1024px) {
    .tal-account-console { grid-template-columns: 1fr; }
    .tal-account-auth-story { min-height: 0; }
}

@media (max-width: 680px) {
    .tal-account-nav__actions .tal-public-nav__login { display: none; }
    .tal-auth-access--account { padding-top: 86px; }
    .tal-account-form-grid,
    .tal-account-generated-form .addNewInputs { grid-template-columns: 1fr; }
    .tal-account-form-wide,
    .tal-account-generated-form .addNewInputs > .buttonClassic,
    .tal-account-generated-form .addNewInputs > button,
    .tal-account-generated-form .addNewInputs > input[type="submit"] { grid-column: 1; }
    .tal-account-profile-panel,
    .tal-account-security-panel { padding: 20px; }
}

/* Role-aware application screens */
.tal-admin-content {
    max-width: 1840px;
}

.tal-admin-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 20px;
}

.tal-admin-heading__eyebrow {
    display: inline-block;
    margin-bottom: 7px;
    color: #6d797f;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.tal-admin-heading h1 {
    max-width: 900px;
    margin: 0;
    color: var(--tal-ink);
    font-size: clamp(1.65rem, 3vw, 2.7rem);
    font-weight: 720;
    letter-spacing: -.04em;
    line-height: 1.05;
}

.tal-admin-breadcrumbs .breadcrumb {
    justify-content: flex-end;
    margin: 0;
    padding: 0;
    color: var(--tal-ink-soft);
    background: transparent;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .62rem;
}

.tal-admin-breadcrumbs .breadcrumb-item,
.tal-admin-breadcrumbs .breadcrumb-item a {
    color: var(--tal-ink-soft);
}

.tal-admin-breadcrumbs .breadcrumb-item.active {
    color: var(--tal-ink);
    font-weight: 750;
}

.tal-admin-surface {
    position: relative;
    min-height: 320px;
    padding: clamp(18px, 2.1vw, 32px);
    border: 1px solid rgba(16, 32, 42, .09);
    border-radius: 22px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 18px 55px rgba(9, 26, 36, .07);
}

.tal-admin-surface > .container-fluid,
.tal-admin-surface > form > .container-fluid {
    padding: 0;
}

.tal-admin-page .card {
    overflow: visible;
    margin-bottom: 20px;
    border: 1px solid rgba(16, 32, 42, .09);
    border-radius: 16px;
    background: #fff;
    box-shadow: none;
}

.tal-admin-page .card-header {
    min-height: 58px;
    padding: 17px 20px;
    border-bottom: 1px solid rgba(16, 32, 42, .09);
    border-radius: 16px 16px 0 0;
    color: var(--tal-ink);
    background: #f8f7f2;
    font-weight: 760;
}

.tal-admin-page .card-body,
.tal-admin-page .card-footer {
    padding: clamp(18px, 2vw, 28px);
}

.tal-admin-page .card-footer {
    border-top: 1px solid rgba(16, 32, 42, .09);
    border-radius: 0 0 16px 16px;
    background: #f8f7f2;
}

.tal-admin-page label,
.tal-admin-page .selectHeader {
    color: var(--tal-ink);
    font-size: .72rem;
    font-weight: 720;
    letter-spacing: .01em;
}

.tal-admin-page .form-control,
.tal-admin-page .custom-select,
.tal-admin-page .selectize-input,
.tal-admin-page .addNewInputs input,
.tal-admin-page .addNewInputs select,
.tal-admin-page .addNewInputs textarea,
.tal-admin-page .panelSelectCustom input,
.tal-admin-page .panelSelectCustom select,
.tal-admin-page #filtertable input,
.tal-admin-page #filtertable select,
.tal-admin-page #filtertable textarea {
    min-height: 42px;
    border: 1px solid #d6dcd9 !important;
    border-radius: 9px !important;
    color: var(--tal-ink) !important;
    background: #fff !important;
    box-shadow: none !important;
    font-size: .78rem;
}

.tal-admin-page textarea.form-control,
.tal-admin-page .addNewInputs textarea {
    min-height: 112px;
    padding: 11px 13px;
}

.tal-admin-page .form-control:focus,
.tal-admin-page .custom-select:focus,
.tal-admin-page .selectize-input.focus,
.tal-admin-page .addNewInputs input:focus,
.tal-admin-page .addNewInputs select:focus,
.tal-admin-page .addNewInputs textarea:focus,
.tal-admin-page #filtertable input:focus,
.tal-admin-page #filtertable select:focus,
.tal-admin-page #filtertable textarea:focus {
    border-color: #58777f !important;
    box-shadow: 0 0 0 3px rgba(141, 216, 232, .24) !important;
    outline: 0;
}

.tal-admin-page .selectize-dropdown {
    overflow: hidden;
    border: 1px solid #d6dcd9;
    border-radius: 9px;
    box-shadow: 0 16px 40px rgba(9, 26, 36, .14);
}

.tal-admin-page .btn,
.tal-admin-page button:not(.tal-icon-button):not(.tal-sidebar-backdrop) {
    min-height: 38px;
    padding: 8px 15px;
    border-radius: 9px;
    font-size: .72rem;
    font-weight: 760;
    box-shadow: none;
}

/* Branded workspace experience */
.tal-workspace-page {
    color: var(--tal-ink);
    background:
        radial-gradient(circle at 8% 14%, rgba(141, 216, 232, .08), transparent 23rem),
        var(--tal-paper);
}

.tal-workspace-header {
    position: sticky;
    z-index: 1040;
    top: 0;
    display: grid;
    min-height: 78px;
    align-items: center;
    gap: clamp(22px, 3vw, 54px);
    padding: 12px clamp(20px, 3.8vw, 64px);
    border-bottom: 1px solid rgba(16, 32, 42, .1);
    background: rgba(244, 241, 233, .94);
    box-shadow: 0 12px 36px rgba(16, 32, 42, .035);
    backdrop-filter: blur(16px);
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.tal-brand--workspace {
    color: var(--tal-night);
}

.tal-brand--workspace .tal-brand__mark {
    border-color: rgba(16, 32, 42, .12);
    color: var(--tal-night);
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 10px 28px rgba(16, 32, 42, .1);
}

.tal-workspace-header__nav,
.tal-workspace-header__actions {
    display: flex;
    align-items: center;
}

.tal-workspace-header__nav {
    justify-content: center;
    gap: clamp(15px, 2vw, 34px);
}

.tal-workspace-header__nav a {
    position: relative;
    padding: 11px 0;
    color: #5c696f;
    font-size: .78rem;
    font-weight: 760;
    text-decoration: none;
    white-space: nowrap;
}

.tal-workspace-header__nav a::after {
    position: absolute;
    right: 0;
    bottom: 4px;
    left: 0;
    height: 2px;
    opacity: 0;
    background: var(--tal-coral);
    content: "";
    transform: scaleX(.5);
    transition: opacity .18s ease, transform .18s ease;
}

.tal-workspace-header__nav a:hover {
    color: var(--tal-night);
}

.tal-workspace-header__nav a:hover::after {
    opacity: 1;
    transform: scaleX(1);
}

.tal-workspace-header__actions {
    gap: 8px;
}

.tal-help-button,
.tal-workspace-user {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 12px;
    border: 1px solid rgba(16, 32, 42, .12);
    border-radius: 10px;
    color: var(--tal-ink);
    background: rgba(255, 255, 255, .52);
    font-size: .69rem;
    font-weight: 760;
    text-decoration: none;
}

.tal-help-button:hover,
.tal-workspace-user:hover {
    border-color: var(--tal-night);
    color: var(--tal-night);
    background: #fff;
    text-decoration: none;
}

.tal-workspace-user {
    width: 38px;
    padding: 0;
}

.tal-workspace-user span {
    display: none;
}

.tal-workspace-contextbar {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 8px clamp(20px, 3.8vw, 64px);
    border-bottom: 1px solid rgba(16, 32, 42, .07);
    color: #778388;
    background: rgba(255, 255, 255, .34);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .62rem;
}

.tal-workspace-contextbar > div {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 9px;
}

.tal-workspace-contextbar strong {
    overflow: hidden;
    color: var(--tal-ink);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-workspace-contextbar i {
    font-size: .48rem;
}

.tal-role-chip {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    gap: 8px;
    padding: 0 10px;
    border: 1px solid rgba(16, 32, 42, .1);
    border-radius: 999px;
    color: #536168;
    background: rgba(255, 255, 255, .64);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .57rem;
    font-weight: 780;
    text-transform: uppercase;
    white-space: nowrap;
}

.tal-role-chip i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--tal-coral);
}

.tal-role-chip[data-tal-role-group="agentic"] i,
.tal-role-chip[data-tal-role-group="operations"] i { background: #52aabb; }
.tal-role-chip[data-tal-role-group="content"] i { background: #a47fd2; }
.tal-role-chip[data-tal-role-group="participant"] i { background: #70a94e; }
.tal-role-chip[data-tal-role-group="support"] i { background: #d39a3b; }
.tal-role-chip[data-tal-role-group="observer"] i { background: #909b9f; }

.tal-workspace-content {
    width: min(100%, 1580px);
    max-width: none;
    margin: 0 auto;
    padding: clamp(24px, 3.4vw, 54px) clamp(20px, 3.8vw, 64px);
}

.tal-workspace-footer {
    width: 100%;
    padding-right: clamp(20px, 3.8vw, 64px);
    padding-left: clamp(20px, 3.8vw, 64px);
}

.tal-dashboard-hero {
    min-height: 350px;
    align-items: center;
}

.tal-dashboard-hero__copy .tal-role-chip--hero {
    margin-bottom: 18px;
    border-color: rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .78);
    background: rgba(255, 255, 255, .06);
}

.tal-dashboard-hero__actions .tal-secondary-button {
    background: rgba(11, 24, 34, .66);
    backdrop-filter: blur(5px);
}

.tal-dashboard-hero h1 {
    max-width: 900px;
    font-size: clamp(2.35rem, 4.2vw, 4.65rem);
}

.tal-transformation-flow {
    padding: clamp(28px, 4vw, 52px);
    border: 1px solid var(--tal-line);
    border-radius: var(--tal-radius-lg);
    background: rgba(255, 255, 255, .68);
}

.tal-flow-track {
    display: grid;
    margin: 34px 0 0;
    padding: 0;
    border-top: 1px solid var(--tal-line);
    list-style: none;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.tal-flow-track li {
    position: relative;
    min-width: 0;
    padding: 28px 20px 8px;
}

.tal-flow-track li:first-child { padding-left: 0; }
.tal-flow-track li + li { border-left: 1px solid var(--tal-line); }

.tal-flow-track li > span {
    position: absolute;
    top: -13px;
    left: 20px;
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 50%;
    color: var(--tal-night);
    background: var(--tal-acid);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .55rem;
    font-weight: 850;
}

.tal-flow-track li:first-child > span { left: 0; }
.tal-flow-track small {
    color: var(--tal-coral);
    letter-spacing: .1em;
    font-size: .57rem;
    font-weight: 820;
    text-transform: uppercase;
}
.tal-flow-track strong { display: block; margin-top: 7px; font-size: .86rem; }
.tal-flow-track p { margin: 8px 0 0; color: #748087; font-size: .69rem; line-height: 1.55; }

.tal-capability-band {
    display: grid;
    overflow: hidden;
    border: 1px solid var(--tal-line);
    border-radius: var(--tal-radius);
    background: rgba(255, 255, 255, .6);
    grid-template-columns: repeat(4, 1fr);
}

.tal-capability-band article {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
    padding: 20px;
}

.tal-capability-band article + article { border-left: 1px solid var(--tal-line); }
.tal-capability-band article > i {
    display: grid;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    place-items: center;
    border-radius: 11px;
    color: var(--tal-night);
    background: #e7ebe3;
    font-size: .8rem;
}
.tal-capability-band article:nth-child(2) > i { background: #e1f3f6; }
.tal-capability-band article:nth-child(3) > i { background: #f8e6df; }
.tal-capability-band article:nth-child(4) > i { background: #ecf7cd; }
.tal-capability-band div { display: flex; min-width: 0; flex-direction: column; }
.tal-capability-band small { color: #7f8a8e; font-size: .57rem; text-transform: uppercase; }
.tal-capability-band strong { margin-top: 3px; font-size: .72rem; line-height: 1.35; }

.tal-module-grid--role {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tal-module-grid--role .tal-module-card {
    min-height: 170px;
}

/* One-time role helper */
body.tal-onboarding-is-open { overflow: hidden; }
.tal-onboarding {
    position: fixed;
    z-index: 11000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 22px;
}
.tal-onboarding[hidden] { display: none !important; }
.tal-onboarding__backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(6, 18, 26, .66);
    backdrop-filter: blur(6px);
}
.tal-onboarding__dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 720px);
    max-height: calc(100vh - 44px);
    overflow-y: auto;
    padding: clamp(28px, 4vw, 48px);
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 24px;
    background: #fbfcf8;
    box-shadow: 0 35px 95px rgba(4, 16, 23, .3);
}
.tal-onboarding__close {
    position: absolute;
    top: 18px;
    right: 18px;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid var(--tal-line);
    border-radius: 50%;
    color: var(--tal-ink);
    background: #fff;
}
.tal-onboarding h2 { max-width: 560px; margin: 0; letter-spacing: -.04em; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.02; }
.tal-onboarding__lead { max-width: 590px; margin: 18px 0 0; color: var(--tal-ink-soft); line-height: 1.65; }
.tal-onboarding__steps { margin: 30px 0 0; padding: 0; border-top: 1px solid var(--tal-line); list-style: none; }
.tal-onboarding__steps li { display: grid; gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--tal-line); grid-template-columns: 34px 1fr; }
.tal-onboarding__steps li > span { color: var(--tal-coral); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .66rem; font-weight: 850; }
.tal-onboarding__steps strong { font-size: .86rem; }
.tal-onboarding__steps p { margin: 4px 0 0; color: #748087; font-size: .72rem; line-height: 1.5; }
.tal-onboarding__actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 26px; }
.tal-onboarding__actions button { cursor: pointer; }

/* Role guide */
.tal-role-guide { display: flex; flex-direction: column; gap: 28px; }
.tal-role-guide__hero {
    position: relative;
    overflow: hidden;
    padding: clamp(30px, 5vw, 64px);
    border-radius: var(--tal-radius-lg);
    color: #fff;
    background: radial-gradient(circle at 88% 8%, rgba(141, 216, 232, .24), transparent 28%), var(--tal-night);
}
.tal-role-guide__hero::after {
    position: absolute;
    right: -90px;
    bottom: -150px;
    width: 360px;
    height: 360px;
    border: 1px solid rgba(215, 255, 104, .2);
    border-radius: 50%;
    content: "";
}
.tal-role-guide__back { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 9px; margin-bottom: 55px; color: rgba(255,255,255,.7); font-size: .7rem; font-weight: 750; }
.tal-role-guide__back:hover { color: #fff; text-decoration: none; }
.tal-role-guide__hero .tal-eyebrow { position: relative; z-index: 1; color: var(--tal-acid); }
.tal-role-guide__hero h1 { position: relative; z-index: 1; max-width: 900px; margin: 0; letter-spacing: -.045em; font-size: clamp(2.4rem, 4.6vw, 5rem); line-height: 1; }
.tal-role-guide__hero > p:not(.tal-eyebrow) { position: relative; z-index: 1; max-width: 720px; margin: 20px 0; color: rgba(255,255,255,.66); font-size: 1rem; line-height: 1.65; }
.tal-role-guide__hero .tal-role-chip { position: relative; z-index: 1; border-color: rgba(255,255,255,.18); color: rgba(255,255,255,.78); background: rgba(255,255,255,.06); }
.tal-role-guide__section { padding: clamp(26px, 4vw, 48px); border: 1px solid var(--tal-line); border-radius: var(--tal-radius-lg); background: rgba(255,255,255,.66); }
.tal-guide-flow { display: grid; margin: 32px 0 0; padding: 0; list-style: none; grid-template-columns: repeat(5, 1fr); }
.tal-guide-flow li { padding: 22px; border-top: 1px solid var(--tal-line); }
.tal-guide-flow li + li { border-left: 1px solid var(--tal-line); }
.tal-guide-flow li > span { color: var(--tal-coral); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .62rem; font-weight: 850; }
.tal-guide-flow strong { display: block; margin-top: 18px; font-size: .82rem; }
.tal-guide-flow p { margin: 7px 0 0; color: #748087; font-size: .68rem; line-height: 1.55; }
.tal-guide-priorities { display: grid; gap: 10px; margin-top: 26px; grid-template-columns: repeat(2, 1fr); }
.tal-guide-priorities a { display: grid; align-items: center; gap: 16px; min-height: 105px; padding: 18px; border: 1px solid var(--tal-line); border-radius: 14px; color: var(--tal-ink); background: rgba(255,255,255,.7); grid-template-columns: 28px 1fr 20px; }
.tal-guide-priorities a:hover { border-color: var(--tal-night); background: #fff; text-decoration: none; transform: translateY(-2px); }
.tal-guide-priorities a > span { color: var(--tal-coral); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .62rem; font-weight: 850; }
.tal-guide-priorities strong { font-size: .82rem; }
.tal-guide-priorities p { margin: 5px 0 0; color: #758188; font-size: .68rem; line-height: 1.5; }
.tal-guide-priorities a > i { color: #9ba4a7; font-size: .68rem; }
.tal-guide-rules { display: grid; gap: 12px; grid-template-columns: repeat(3, 1fr); }
.tal-guide-rules article { display: flex; gap: 14px; padding: 23px; border: 1px solid var(--tal-line); border-radius: 15px; background: rgba(255,255,255,.62); }
.tal-guide-rules article > i { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border-radius: 10px; color: var(--tal-night); background: #e7ebe3; font-size: .75rem; }
.tal-guide-rules strong { font-size: .78rem; }
.tal-guide-rules p { margin: 6px 0 0; color: #748087; font-size: .67rem; line-height: 1.52; }

/* Login alignment and public solution cards */
.tal-auth-access {
    align-items: flex-start;
    padding-top: clamp(38px, 5vw, 68px);
}
.tal-application-grid article { min-height: 360px; }
.tal-application-grid h3 { margin-top: 0; }

@media (max-width: 1180px) {
    .tal-workspace-header { grid-template-columns: auto 1fr; }
    .tal-workspace-header__nav { order: 3; grid-column: 1 / -1; justify-content: flex-start; overflow-x: auto; padding-top: 5px; border-top: 1px solid var(--tal-line); }
    .tal-workspace-header__actions { justify-content: flex-end; }
    .tal-flow-track, .tal-guide-flow { grid-template-columns: repeat(3, 1fr); }
    .tal-flow-track li:nth-child(4), .tal-guide-flow li:nth-child(4) { border-left: 0; }
    .tal-flow-track li:nth-child(n+4), .tal-guide-flow li:nth-child(n+4) { border-top: 1px solid var(--tal-line); }
    .tal-capability-band { grid-template-columns: repeat(2, 1fr); }
    .tal-capability-band article:nth-child(3) { border-top: 1px solid var(--tal-line); border-left: 0; }
    .tal-capability-band article:nth-child(4) { border-top: 1px solid var(--tal-line); }
}

@media (max-width: 820px) {
    .tal-programme-claim-confirm { grid-template-columns: 1fr; }
    .tal-workspace-header { gap: 10px 18px; padding: 10px 16px; }
    .tal-workspace-header__actions .tal-help-button span,
    .tal-workspace-header__actions .tal-logout-button span { display: none; }
    .tal-help-button { width: 38px; padding: 0; }
    .tal-workspace-header__actions .tal-language-picker > i:first-child { display: none; }
    .tal-workspace-contextbar { padding-right: 16px; padding-left: 16px; }
    .tal-workspace-contextbar > div span,
    .tal-workspace-contextbar > div i { display: none; }
    .tal-workspace-content { padding: 20px 16px 32px; }
    .tal-dashboard-hero { min-height: 470px; align-items: stretch; flex-direction: column; justify-content: flex-end; }
    .tal-flow-track, .tal-guide-flow { grid-template-columns: 1fr; }
    .tal-flow-track li, .tal-flow-track li:first-child { padding: 26px 0 20px; border-left: 0 !important; }
    .tal-flow-track li > span, .tal-flow-track li:first-child > span { left: 0; }
    .tal-guide-flow li { border-left: 0 !important; }
    .tal-module-grid--role, .tal-guide-priorities, .tal-guide-rules { grid-template-columns: 1fr; }
    .tal-onboarding__actions { align-items: stretch; flex-direction: column-reverse; }
    .tal-onboarding__actions > * { width: 100%; }
}

@media (max-width: 560px) {
    .tal-workspace-header .tal-brand__name { display: none; }
    .tal-workspace-header__actions { gap: 5px; }
    .tal-workspace-header__nav { gap: 20px; }
    .tal-workspace-header__nav a { font-size: .7rem; }
    .tal-workspace-contextbar .tal-role-chip { max-width: 55vw; overflow: hidden; text-overflow: ellipsis; }
    .tal-capability-band { grid-template-columns: 1fr; }
    .tal-capability-band article + article { border-top: 1px solid var(--tal-line); border-left: 0; }
    .tal-transformation-flow, .tal-role-guide__section { padding: 24px 20px; }
    .tal-role-guide__hero { padding: 28px 22px; }
    .tal-role-guide__back { margin-bottom: 42px; }
}

/* Product-native team operations workspace */
.tal-ops-page {
    width: min(1440px, 100%);
    margin: 0 auto;
    padding: 38px clamp(22px, 4vw, 64px) 72px;
}

.tal-ops-hero {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 26px;
}

.tal-ops-hero > div:first-child { max-width: 820px; }
.tal-ops-hero h1 { margin: 5px 0 10px; font-size: clamp(2.05rem, 3vw, 3.55rem); line-height: 1.02; letter-spacing: -.055em; font-weight: 850; }
.tal-ops-hero p:not(.tal-eyebrow) { max-width: 760px; margin: 0; color: var(--tal-ink-soft); font-size: 1rem; line-height: 1.7; }

.tal-ops-trust-note {
    display: flex;
    align-items: center;
    gap: 11px;
    max-width: 330px;
    padding: 13px 16px;
    border: 1px solid #cdd5c8;
    border-radius: 999px;
    color: #34474e;
    background: rgba(255,255,255,.62);
    font-size: .74rem;
    font-weight: 750;
    line-height: 1.35;
}
.tal-ops-trust-note i { color: #3f7b64; font-size: 1rem; }

.tal-ops-alert, .tal-ops-demo {
    display: flex;
    align-items: center;
    gap: 11px;
    margin: 0 0 18px;
    padding: 14px 17px;
    border-radius: 13px;
    font-size: .85rem;
}
.tal-ops-alert--success { border: 1px solid #a7d8c3; background: #e9f7f0; color: #185a41; }
.tal-ops-alert--error { border: 1px solid #efb3aa; background: #fff0ed; color: #8a2f22; }
.tal-ops-demo { border: 1px dashed #a7b879; background: #f2f8dc; color: #42502b; }
.tal-ops-demo strong { flex: 0 0 auto; padding: 5px 8px; border-radius: 6px; color: var(--tal-night); background: var(--tal-acid); font: 800 .61rem/1.1 ui-monospace, monospace; letter-spacing: .08em; }

.tal-ops-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    align-items: center;
    margin-bottom: 24px;
    padding: 19px 22px;
    border: 1px solid var(--tal-line);
    border-radius: 17px;
    background: rgba(255,255,255,.72);
}
.tal-ops-flow > div { display: flex; align-items: center; gap: 12px; min-width: 0; }
.tal-ops-flow > div > b { display: grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; border: 1px solid #c8cec8; border-radius: 50%; font: 800 .7rem/1 ui-monospace, monospace; }
.tal-ops-flow > div.is-current > b { border-color: var(--tal-acid); background: var(--tal-acid); }
.tal-ops-flow strong, .tal-ops-flow small { display: block; }
.tal-ops-flow strong { font-size: .82rem; }
.tal-ops-flow small { margin-top: 3px; color: var(--tal-ink-soft); font-size: .69rem; }
.tal-ops-flow > i { color: #a0aaa9; font-size: .65rem; }

.tal-survey-participation-note {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin: -5px 0 24px;
    padding: 15px 17px;
    border: 1px solid #d6e1d6;
    border-radius: 14px;
    background: #f4f9ef;
}

.tal-survey-participation-note > i {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: 10px;
    color: #376a52;
    background: #e0f1e5;
}

.tal-survey-participation-note strong {
    color: var(--tal-ink);
    font-size: .8rem;
}

.tal-survey-participation-note p {
    margin: 4px 0 0;
    color: var(--tal-ink-soft);
    font-size: .72rem;
    line-height: 1.55;
}

.tal-team-measurement-flow {
    margin: 0 0 24px;
    padding: clamp(20px, 2.4vw, 30px);
    border: 1px solid #233841;
    border-radius: 21px;
    color: #edf4ef;
    background: linear-gradient(135deg, #0b1822 0%, #142a34 100%);
    box-shadow: 0 18px 44px rgba(7, 27, 38, .14);
    scroll-margin-top: 96px;
}
.tal-team-measurement-flow__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.tal-team-measurement-flow__heading h2 { margin: 5px 0 7px; color: #fff; font-size: clamp(1.15rem, 2vw, 1.55rem); letter-spacing: -.03em; }
.tal-team-measurement-flow__heading p:not(.tal-eyebrow) { max-width: 760px; margin: 0; color: #b5c1c6; font-size: .75rem; line-height: 1.6; }
.tal-team-measurement-flow__heading > span { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; padding: 9px 11px; border: 1px solid rgba(200,255,77,.28); border-radius: 999px; color: #dfff86; background: rgba(200,255,77,.07); font-size: .62rem; font-weight: 800; }
.tal-team-measurement-steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.tal-team-measurement-steps li { min-width: 0; padding: 15px 13px; border: 1px solid rgba(255,255,255,.11); border-radius: 13px; background: rgba(255,255,255,.045); }
.tal-team-measurement-steps b { display: block; margin-bottom: 13px; color: #c8ff4d; font: 850 .62rem/1 ui-monospace, monospace; }
.tal-team-measurement-steps strong { display: block; color: #fff; font-size: .72rem; line-height: 1.4; }
.tal-team-measurement-steps p { margin: 6px 0 0; color: #aebbc0; font-size: .64rem; line-height: 1.5; }
.tal-team-measurement-roles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin-top: 12px; }
.tal-team-measurement-roles article { display: flex; align-items: flex-start; gap: 10px; padding: 13px; border-radius: 12px; color: #344c43; background: #edf4ef; }
.tal-team-measurement-roles article > i { display: grid; flex: 0 0 30px; width: 30px; height: 30px; place-items: center; border-radius: 9px; color: #244f3c; background: #d8ebdd; }
.tal-team-measurement-roles strong { display: block; font-size: .68rem; }
.tal-team-measurement-roles p { margin: 4px 0 0; color: #5a6f67; font-size: .61rem; line-height: 1.48; }

.tal-work-process-note { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 14px; margin: -5px 0 24px; padding: 15px 17px; border: 1px solid #cad8cd; border-radius: 15px; background: #f3f8f1; }
.tal-work-process-note > i { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 11px; color: #335f4d; background: #dcecdf; }
.tal-work-process-note strong { display: block; font-size: .76rem; }
.tal-work-process-note p { margin: 4px 0 0; color: #65756e; font-size: .67rem; line-height: 1.5; }
.tal-work-process-note a { display: inline-flex; align-items: center; gap: 7px; color: #284f3f; font-size: .66rem; font-weight: 850; text-decoration: none; white-space: nowrap; }

.tal-survey-method {
    margin: -10px 0 24px;
    border: 1px solid #d9ded8;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(7, 27, 38, .05);
}
.tal-survey-method > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    list-style: none;
    cursor: pointer;
}
.tal-survey-method > summary::-webkit-details-marker { display: none; }
.tal-survey-method > summary span,
.tal-survey-method > summary small,
.tal-survey-method > summary strong { display: block; }
.tal-survey-method > summary small {
    margin-bottom: 5px;
    color: #65757b;
    font: 800 .61rem/1.2 ui-monospace, monospace;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.tal-survey-method > summary strong { font-size: .92rem; }
.tal-survey-method > summary > i { transition: transform .2s ease; }
.tal-survey-method[open] > summary > i { transform: rotate(180deg); }
.tal-survey-program {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    padding: 0 20px 16px;
}
.tal-survey-program article {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 9px;
    min-height: 142px;
    padding: 14px 12px;
    border: 1px solid #e0e5df;
    border-radius: 12px;
    background: linear-gradient(145deg, #fbfcf9 0%, #f1f4ec 100%);
}
.tal-survey-program article > b {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 50%;
    color: var(--tal-night);
    background: var(--tal-acid);
    font: 850 .6rem/1 ui-monospace, monospace;
}
.tal-survey-program span,
.tal-survey-program strong { display: block; }
.tal-survey-program span {
    color: #6c7a7f;
    font-size: .55rem;
    font-weight: 850;
    letter-spacing: .045em;
    text-transform: uppercase;
}
.tal-survey-program strong { margin-top: 6px; font-size: .72rem; line-height: 1.35; }
.tal-survey-program p { margin: 6px 0 0; color: var(--tal-ink-soft); font-size: .64rem; line-height: 1.48; }
.tal-survey-method__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 0 20px 16px;
}
.tal-survey-method__grid article {
    display: flex;
    gap: 12px;
    padding: 14px;
    border-radius: 12px;
    background: #f2f4ef;
}
.tal-survey-method__grid article > b {
    color: #668011;
    font: 800 .65rem/1.4 ui-monospace, monospace;
}
.tal-survey-method__grid strong { font-size: .78rem; }
.tal-survey-method__grid p,
.tal-survey-method__note {
    margin: 5px 0 0;
    color: var(--tal-ink-soft);
    font-size: .7rem;
    line-height: 1.55;
}
.tal-survey-method__note {
    margin: 0 20px 20px;
    padding: 13px 14px;
    border-left: 3px solid var(--tal-acid);
    background: #f7f9ef;
}
.tal-survey-validation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0 20px 20px; }
.tal-survey-validation article { padding: 14px; border: 1px solid #e1e5e0; border-radius: 12px; background: #fbfcfa; }
.tal-survey-validation article span, .tal-survey-validation article strong { display: block; }
.tal-survey-validation article span { color: #63756c; font-size: .56rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.tal-survey-validation article strong { margin-top: 6px; font-size: .76rem; }
.tal-survey-validation article p { margin: 6px 0 0; color: var(--tal-ink-soft); font-size: .67rem; line-height: 1.55; }
.tal-survey-validation nav { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 7px; }
.tal-survey-validation nav a { padding: 6px 9px; border: 1px solid #d7ded7; border-radius: 999px; color: #365548; background: #fff; font-size: .59rem; font-weight: 800; text-decoration: none; }
.tal-survey-validation nav a:hover { border-color: #91a89a; color: var(--tal-night); }

.tal-ops-filter {
    display: flex;
    align-items: flex-end;
    gap: 10px;
    margin-bottom: 24px;
    padding: 13px;
    border: 1px solid var(--tal-line);
    border-radius: 15px;
    background: #eceae3;
}
.tal-ops-filter label { flex: 1 1 170px; margin: 0; }
.tal-ops-filter label span, .tal-ops-form label > span { display: block; margin: 0 0 6px; color: #5e6b71; font-size: .66rem; font-weight: 800; letter-spacing: .045em; text-transform: uppercase; }
.tal-ops-filter select, .tal-ops-form input, .tal-ops-form select, .tal-ops-form textarea {
    width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid #cfd5d1; border-radius: 10px; color: var(--tal-ink); background: #fff; font: 650 .82rem/1.3 inherit; outline: none;
}
.tal-ops-filter select:focus, .tal-ops-form input:focus, .tal-ops-form select:focus, .tal-ops-form textarea:focus { border-color: #75937e; box-shadow: 0 0 0 3px rgba(94, 135, 106, .13); }
.tal-ops-filter button, .tal-ops-filter > a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 17px; border: 0; border-radius: 10px; font-size: .76rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.tal-ops-filter button { color: #fff; background: var(--tal-night); }
.tal-ops-filter > a { color: #526067; }

.tal-ops-layout { display: grid; grid-template-columns: minmax(0, 1.62fr) minmax(310px, .78fr); gap: 24px; align-items: start; }
.tal-ops-layout--teams { grid-template-columns: minmax(0, 1.45fr) minmax(330px, .82fr); }
.tal-ops-main, .tal-ops-side { min-width: 0; }
.tal-ops-side { display: grid; gap: 18px; }
.tal-ops-section-heading, .tal-ops-panel__heading--row { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.tal-ops-section-heading { margin: 0 0 15px; }
.tal-ops-section-heading--spaced { margin-top: 42px; }
.tal-ops-section-heading h2, .tal-ops-panel__heading h2 { margin: 3px 0 0; font-size: 1.35rem; letter-spacing: -.025em; font-weight: 820; }
.tal-section-lead { max-width: 720px; margin: 7px 0 0; color: var(--tal-ink-soft); font-size: .72rem; line-height: 1.55; }
.tal-ops-count { padding: 7px 10px; border: 1px solid var(--tal-line); border-radius: 999px; color: #647178; background: rgba(255,255,255,.7); font-size: .68rem; font-weight: 750; }

.tal-ops-card-list { display: grid; gap: 13px; }
.tal-work-card, .tal-ops-panel, .tal-survey-assignment, .tal-catalog-grid > article {
    border: 1px solid var(--tal-line); border-radius: 18px; background: #fff; box-shadow: 0 13px 34px rgba(16, 32, 42, .055);
}
.tal-work-card { padding: 20px 21px; }
.tal-work-card.is-demo, .tal-survey-assignment.is-demo { background: #fcfcf5; }
.tal-work-card__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.tal-ops-type { display: inline-flex; align-items: center; gap: 7px; color: #56656c; font-size: .7rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.tal-ops-type i { color: #63826b; }
.tal-work-card h3 { margin: 16px 0 14px; font-size: 1.07rem; line-height: 1.4; font-weight: 800; }
.tal-work-card__survey-note { display: inline-flex; align-items: center; gap: 7px; margin: -5px 0 13px; padding: 7px 9px; border-radius: 9px; color: #3c604f; background: #edf5ef; font-size: .63rem; font-weight: 750; }
.tal-work-meta { display: grid; grid-template-columns: 1.3fr 1fr .75fr; gap: 12px; margin: 0; padding: 13px 0; border-top: 1px solid #eceeea; border-bottom: 1px solid #eceeea; }
.tal-work-meta div { min-width: 0; }
.tal-work-meta dt { margin-bottom: 3px; color: #7a868b; font-size: .61rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.tal-work-meta dd { margin: 0; overflow: hidden; font-size: .76rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.tal-work-card__actions { display: flex; align-items: center; justify-content: flex-end; margin-top: 14px; }

.tal-ops-state { display: inline-flex; align-items: center; gap: 6px; width: max-content; padding: 5px 8px; border-radius: 999px; color: #516066; background: #e9ece9; font-size: .63rem; font-weight: 800; }
.tal-ops-state--open { color: #765319; background: #fff1ca; }
.tal-ops-state--in_progress { color: #285f70; background: #daf1f5; }
.tal-ops-state--completed { color: #246148; background: #dff4e9; }
.tal-ops-state--cancelled { color: #7e3d36; background: #f7e1de; }

.tal-ops-primary, .tal-ops-secondary {
    display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 43px; padding: 0 15px; border: 0; border-radius: 10px; font-size: .76rem; font-weight: 850; text-decoration: none; cursor: pointer;
}
.tal-ops-primary { color: var(--tal-night); background: var(--tal-acid); box-shadow: 0 8px 21px rgba(185, 221, 75, .19); }
.tal-ops-primary:hover { color: var(--tal-night); transform: translateY(-1px); }
.tal-ops-secondary { border: 1px solid #cbd1cd; color: var(--tal-ink); background: #fff; }
.tal-ops-demo-label { color: #788268; font-size: .7rem; font-weight: 800; }
.tal-ops-complete { color: #34725a; font-size: .72rem; font-weight: 800; }

.tal-ops-panel { padding: 22px; }
.tal-ops-panel--compact { padding: 19px; }
.tal-ops-panel__heading { margin-bottom: 15px; }
.tal-ops-panel__intro { margin: 0 0 17px; color: var(--tal-ink-soft); font-size: .78rem; line-height: 1.6; }
.tal-ops-form { display: grid; gap: 13px; }
.tal-ops-form label { margin: 0; }
.tal-ops-form label small { display: block; margin-top: 5px; color: #788389; font-size: .66rem; line-height: 1.45; }
.tal-ops-form button { width: 100%; margin-top: 3px; }
.tal-ops-permission { padding: 8px 2px 2px; text-align: center; }
.tal-ops-permission > i { display: grid; width: 46px; height: 46px; margin: 0 auto 13px; place-items: center; border-radius: 50%; color: #5c6f65; background: #edf1eb; }
.tal-ops-permission h3 { margin: 0 0 8px; font-size: .95rem; }
.tal-ops-permission p { margin: 0; color: var(--tal-ink-soft); font-size: .75rem; line-height: 1.6; }
.tal-ops-mini-task { display: flex; align-items: flex-start; gap: 10px; padding: 11px 0; border-top: 1px solid #eceeea; }
.tal-ops-mini-task .tal-ops-state { width: 8px; height: 8px; margin-top: 5px; padding: 0; }
.tal-ops-mini-task strong, .tal-ops-mini-task small { display: block; }
.tal-ops-mini-task strong { font-size: .74rem; line-height: 1.4; }
.tal-ops-mini-task small { margin-top: 3px; color: #768188; font-size: .65rem; }

.tal-ops-empty { padding: 45px 24px; border: 1px dashed #c9cfca; border-radius: 18px; background: rgba(255,255,255,.55); text-align: center; }
.tal-ops-empty > i { color: #668371; font-size: 1.6rem; }
.tal-ops-empty h2, .tal-ops-empty h3 { margin: 12px 0 7px; font-size: 1rem; }
.tal-ops-empty p { max-width: 520px; margin: 0 auto 15px; color: var(--tal-ink-soft); font-size: .78rem; line-height: 1.6; }
.tal-ops-empty--small { padding: 22px; }

.tal-ops-scenario { display: grid; grid-template-columns: .75fr 1.25fr; gap: 26px; margin-bottom: 24px; padding: 24px; border-radius: 20px; color: #fff; background: var(--tal-night); }
.tal-ops-scenario > div > span { color: var(--tal-acid); font: 800 .63rem/1 ui-monospace, monospace; letter-spacing: .1em; }
.tal-ops-scenario h2 { margin: 10px 0 8px; font-size: 1.35rem; }
.tal-ops-scenario p { margin: 0; color: #aab7bd; font-size: .76rem; line-height: 1.55; }
.tal-ops-scenario ol { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.tal-ops-scenario li { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 11px; background: rgba(255,255,255,.045); font-size: .7rem; }
.tal-ops-scenario li b { color: var(--tal-acid); font: 800 .65rem/1 ui-monospace, monospace; }

.tal-team-selector-panel { margin: 0 0 24px; padding: clamp(18px, 2.4vw, 28px); border: 1px solid #d8ded8; border-radius: 20px; background: linear-gradient(135deg, #fff 0%, #f6f8f2 100%); box-shadow: 0 12px 35px rgba(18,35,40,.055); scroll-margin-top: 95px; }
.tal-team-selector-panel__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.tal-team-selector-panel__heading h2 { margin: 6px 0 7px; font-size: clamp(1.05rem, 1.7vw, 1.35rem); }
.tal-team-selector-panel__heading p:not(.tal-eyebrow) { max-width: 720px; margin: 0; color: #68777d; font-size: .72rem; line-height: 1.55; }
.tal-team-selector-panel__heading .tal-ops-count { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; }
.tal-team-switcher { display: grid; grid-template-columns: repeat(auto-fit, minmax(255px, 1fr)); gap: 12px; margin: 0; }
.tal-team-switcher a { display: grid; grid-template-columns: minmax(0, 1fr) 34px; align-items: center; gap: 13px; min-height: 126px; padding: 16px; border: 1px solid var(--tal-line); border-radius: 15px; color: var(--tal-ink); background: #fff; text-decoration: none; transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.tal-team-switcher a:hover { color: var(--tal-ink); border-color: #9daf9d; box-shadow: 0 10px 24px rgba(16,32,42,.08); transform: translateY(-1px); }
.tal-team-switcher a:focus-visible { outline: 3px solid rgba(125,160,71,.25); outline-offset: 2px; }
.tal-team-switcher a.is-active { border-color: #243941; background: #fbfff1; box-shadow: inset 4px 0 var(--tal-acid), 0 10px 24px rgba(16,32,42,.08); }
.tal-team-switcher__identity { min-width: 0; }
.tal-team-switcher__topline { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.tal-team-switcher strong, .tal-team-switcher small { display: block; }
.tal-team-switcher strong { overflow-wrap: anywhere; font-size: .84rem; line-height: 1.35; }
.tal-team-switcher small { margin-top: 5px; color: #738087; font-size: .64rem; line-height: 1.45; text-transform: capitalize; }
.tal-team-switcher__status { flex: 0 0 auto; padding: 5px 7px; border-radius: 999px; color: #657278; background: #eef1ed; font-size: .54rem; font-weight: 850; white-space: nowrap; }
.tal-team-switcher a.is-active .tal-team-switcher__status { color: #314f40; background: #dfff86; }
.tal-team-switcher__counts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.tal-team-switcher__counts span { display: inline-flex; align-items: center; gap: 5px; padding: 5px 7px; border-radius: 999px; color: #53675c; background: #edf2ed; font-size: .57rem; font-weight: 800; }
.tal-team-switcher__counts span.has-pending { color: #795c12; background: #fff0bd; }
.tal-team-switcher i { color: #899497; font-size: .66rem; }
.tal-team-switcher__counts i { color: inherit; }
.tal-team-switcher__action { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: #eef1ed; }
.tal-team-switcher a.is-active .tal-team-switcher__action { background: var(--tal-night); }
.tal-team-switcher a.is-active .tal-team-switcher__action i { color: var(--tal-acid); }
.tal-team-profile { margin-bottom: 18px; box-shadow: none; }
.tal-context-badge { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid #d8e0d9; border-radius: 999px; color: #36594b; background: #f3f8f1; font-size: .64rem; font-weight: 800; }
.tal-team-profile__summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.tal-team-profile__summary > div { padding: 14px; border: 1px solid #e1e6e1; border-radius: 12px; background: #fafbf8; }
.tal-team-profile__summary span, .tal-team-profile__summary strong, .tal-team-profile__summary small { display: block; }
.tal-team-profile__summary span { color: #657279; font-size: .58rem; font-weight: 850; letter-spacing: .055em; text-transform: uppercase; }
.tal-team-profile__summary strong { margin-top: 7px; font-size: .8rem; }
.tal-team-profile__summary small { margin-top: 5px; color: #748087; font-size: .65rem; line-height: 1.5; }
.tal-team-profile__edit { margin-top: 12px; border: 1px solid #e1e6e1; border-radius: 12px; background: #fff; }
.tal-team-profile__edit summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; color: #345246; font-size: .7rem; font-weight: 850; cursor: pointer; list-style: none; }
.tal-team-profile__edit[open] summary { border-bottom: 1px solid #e5e8e4; }
.tal-team-profile__edit[open] summary i { transform: rotate(180deg); }
.tal-team-profile__edit form { padding: 14px; }
.tal-team-members { box-shadow: none; }
.tal-privacy-threshold { padding: 7px 9px; border-radius: 999px; color: #3d5f51; background: #e9f3e8; font-size: .65rem; font-weight: 800; }
.tal-member-management-guide { margin: 0 0 14px; border: 1px solid #dce3dc; border-radius: 12px; background: #f8faf7; }
.tal-member-management-guide summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; color: #35564a; font-size: .67rem; font-weight: 850; cursor: pointer; list-style: none; }
.tal-member-management-guide summary span { display: inline-flex; align-items: center; gap: 7px; }
.tal-member-management-guide[open] summary { border-bottom: 1px solid #e0e5df; }
.tal-member-management-guide[open] summary > i { transform: rotate(180deg); }
.tal-member-management-guide > div { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; padding: 11px; }
.tal-member-management-guide article { padding: 10px; border-radius: 9px; background: #fff; }
.tal-member-management-guide strong { font-size: .66rem; }
.tal-member-management-guide p { margin: 5px 0 0; color: #6b787d; font-size: .6rem; line-height: 1.5; }
.tal-member-list { display: grid; gap: 8px; }
.tal-member-list article { display: grid; grid-template-columns: 40px minmax(0,1fr) auto auto; align-items: center; gap: 11px; padding: 11px; border: 1px solid #e5e8e3; border-radius: 12px; background: #fafbf9; }
.tal-member-list article.is-suspended { opacity: .82; background: #f3f4f1; border-style: dashed; }
.tal-member-avatar { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 50%; color: var(--tal-night); background: var(--tal-acid); font-size: .77rem; font-weight: 850; }
.tal-member-list strong, .tal-member-list small { display: block; }
.tal-member-list strong { font-size: .76rem; }
.tal-member-list small, .tal-member-alias { margin-top: 3px; color: #758087; font-size: .63rem; }
.tal-member-state { display: inline-flex; align-items: center; gap: 5px; margin-top: 6px; font-size: .6rem; font-weight: 800; }
.tal-member-state.is-active { color: #28714f; }
.tal-member-state.is-inactive { color: #7a6744; }
.tal-member-alias { padding: 5px 7px; border-radius: 7px; background: #eef0ec; }
.tal-member-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; }
.tal-member-actions form { margin: 0; }
.tal-member-action { min-height: 32px; padding: 0 10px; border: 1px solid #ced6d0; border-radius: 8px; color: #26383e; background: #fff; font-size: .58rem; font-weight: 800; cursor: pointer; }
.tal-member-action:hover { border-color: #9faf9e; }
.tal-member-action--danger { color: #8d3128; border-color: #e9c7c1; background: #fff8f6; }
.tal-member-action--restore { color: #193b2d; border-color: #bad7c4; background: #f1fbf4; }
.tal-member-anonymized { display: block; max-width: 18rem; color: #758087; font-size: .63rem; line-height: 1.45; }
.tal-member-actions details { position: relative; }
.tal-member-actions summary { padding: 8px 9px; color: #8d3128; font-size: .58rem; font-weight: 800; cursor: pointer; list-style: none; }
.tal-member-actions details[open] form { position: absolute; z-index: 5; top: calc(100% + 6px); right: 0; width: 290px; padding: 12px; border: 1px solid #dce2dd; border-radius: 12px; background: #fff; box-shadow: 0 16px 35px rgba(16,32,42,.15); }
.tal-member-removal-scope { margin: 0 0 10px; padding: 9px; border-radius: 8px; color: #375b4d; background: #edf6ef; font-size: .59rem; line-height: 1.45; }
.tal-member-removal-scope i { margin-right: 4px; }
.tal-member-actions label { display: grid; gap: 5px; margin-bottom: 9px; }
.tal-member-actions label span { color: #637278; font-size: .56rem; font-weight: 800; text-transform: uppercase; }
.tal-member-actions select { width: 100%; min-height: 38px; padding: 7px; border: 1px solid #d6ddd7; border-radius: 8px; font-size: .62rem; }
.tal-member-team-map { grid-column: 2 / -1; padding-top: 8px; border-top: 1px solid #e5e9e5; }
.tal-member-team-map > span { display: block; margin-bottom: 6px; color: #748086; font-size: .55rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.tal-member-team-map > div { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 7px; }
.tal-member-team-map a { display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: center; gap: 7px; min-width: 0; padding: 8px 9px; border: 1px solid #d9e0da; border-radius: 10px; color: #3c574c; background: #f5f8f4; font-size: .59rem; font-weight: 800; text-decoration: none; }
.tal-member-team-map a > i { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 7px; color: #537061; background: #e5ede5; }
.tal-member-team-map a > span { min-width: 0; }
.tal-member-team-map a strong { overflow-wrap: anywhere; font-size: .61rem; line-height: 1.35; }
.tal-member-team-map a.is-current { border-color: #9fba7e; box-shadow: inset 0 0 0 1px #d7ff68; }
.tal-member-team-map a.is-inactive { color: #7b766d; background: #f1f1ee; border-style: dashed; }
.tal-member-team-map a small { display: block; margin: 3px 0 0; color: inherit; font-size: .55rem; font-weight: 650; line-height: 1.35; }

.tal-invite-team-context { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 14px 0 16px; padding: 12px 13px; border: 1px solid #cbd9c9; border-radius: 12px; background: #f3f8ef; }
.tal-invite-team-context > span { display: grid; grid-template-columns: 30px minmax(0, 1fr); column-gap: 9px; min-width: 0; }
.tal-invite-team-context > span > i { grid-row: 1 / 3; display: grid; width: 30px; height: 30px; place-items: center; border-radius: 9px; color: var(--tal-night); background: var(--tal-acid); }
.tal-invite-team-context small, .tal-invite-team-context strong { display: block; min-width: 0; }
.tal-invite-team-context small { color: #68777a; font-size: .55rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.tal-invite-team-context strong { margin-top: 3px; overflow-wrap: anywhere; font-size: .7rem; line-height: 1.35; }
.tal-invite-team-context > a { flex: 0 0 auto; color: #355648; font-size: .58rem; font-weight: 850; text-decoration: none; white-space: nowrap; }
.tal-invite-team-context > a i { margin-left: 4px; }

.tal-invitation-registry { margin-top: 20px; padding-top: 18px; border-top: 1px solid #e3e7e2; }
.tal-invitation-registry__heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.tal-invitation-registry__heading h3 { margin: 5px 0 0; font-size: .95rem; }
.tal-invitation-registry__heading > span { padding: 6px 8px; border-radius: 999px; color: #456052; background: #edf3ec; font-size: .59rem; font-weight: 850; white-space: nowrap; }
.tal-invitation-registry__intro { margin: 9px 0 13px; color: #6c797f; font-size: .66rem; line-height: 1.5; }
.tal-invitation-list { display: grid; gap: 8px; }
.tal-invitation-list article { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 11px; border: 1px solid #e0e5e0; border-radius: 11px; background: #fafbf9; }
.tal-invitation-list article.is-pending { border-color: #e8d9aa; background: #fffaf0; }
.tal-invitation-list article.is-accepted { border-color: #bfdbc9; background: #f2faf5; }
.tal-invitation-list article.is-expired { border-style: dashed; background: #f4f5f2; }
.tal-invitation-icon { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 9px; color: #4e6658; background: #e8eee8; font-size: .7rem; }
.tal-invitation-list article.is-pending .tal-invitation-icon { color: #896815; background: #fff0bc; }
.tal-invitation-list article.is-accepted .tal-invitation-icon { color: #24724c; background: #dff2e5; }
.tal-invitation-identity strong, .tal-invitation-identity small { display: block; overflow-wrap: anywhere; }
.tal-invitation-identity strong { font-size: .7rem; }
.tal-invitation-identity small { margin-top: 3px; color: #718087; font-size: .59rem; }
.tal-invitation-state { display: inline-flex; align-items: center; gap: 5px; padding: 6px 7px; border-radius: 999px; color: #5f6766; background: #eceeeb; font-size: .56rem; font-weight: 850; white-space: nowrap; }
.tal-invitation-list article.is-pending .tal-invitation-state { color: #765b13; background: #ffedaa; }
.tal-invitation-list article.is-accepted .tal-invitation-state { color: #1f6744; background: #d8efdf; }
.tal-invitation-timing { grid-column: 2 / -1; color: #6e7a7e; font-size: .58rem; line-height: 1.45; }
.tal-invitation-empty { display: flex; align-items: center; gap: 9px; padding: 12px; border: 1px dashed #d7ddd7; border-radius: 10px; color: #707c80; background: #fafbf9; font-size: .63rem; line-height: 1.45; }

.tal-survey-assignment-grid { display: grid; gap: 12px; }
.tal-survey-assignment { display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: 15px; padding: 17px; }
.tal-survey-assignment__icon { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; color: #dfff86; background: var(--tal-night); }
.tal-survey-assignment h3 { margin: 7px 0 2px; font-size: .9rem; }
.tal-survey-assignment p, .tal-survey-assignment small { margin: 0; color: #728087; font-size: .67rem; }
.tal-survey-assignment__body { min-width: 0; }
.tal-survey-assignment__context { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin: 11px 0 10px; }
.tal-survey-assignment__context > span { min-width: 0; padding: 9px 10px; border: 1px solid #e1e6e0; border-radius: 9px; background: #f7f9f5; }
.tal-survey-assignment__context small,
.tal-survey-assignment__context strong { display: block; }
.tal-survey-assignment__context small { color: #748079; font-size: .54rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.tal-survey-assignment__context strong { margin-top: 5px; color: #33483f; font-size: .62rem; line-height: 1.42; }
.tal-progress-line { height: 4px; margin: 9px 0 7px; overflow: hidden; border-radius: 4px; background: #e7ebe7; }
.tal-progress-line span { display: block; height: 100%; background: #70aa86; }
.tal-catalog-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 13px; }
.tal-catalog-grid > article { padding: 20px; }
.tal-catalog-card__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #718087; font: 700 .61rem/1 ui-monospace, monospace; }
.tal-pilot-badge { padding: 5px 7px; border-radius: 6px; color: #755c24; background: #fff0c8; font-family: inherit; }
.tal-catalog-phase { display: inline-flex; margin-top: 15px; padding: 6px 8px; border-radius: 999px; color: #36594b; background: #eaf3e8; font-size: .59rem; font-weight: 850; }
.tal-catalog-grid h3 { margin: 9px 0 8px; font-size: 1.05rem; }
.tal-catalog-grid > article > p { min-height: 62px; margin: 0; color: var(--tal-ink-soft); font-size: .73rem; line-height: 1.55; }
.tal-catalog-decision { margin: 14px 0; padding: 12px; border-left: 3px solid var(--tal-acid); border-radius: 0 10px 10px 0; background: #f6f8ee; }
.tal-catalog-decision small, .tal-catalog-decision strong { display: block; }
.tal-catalog-decision small { color: #6d797d; font-size: .57rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.tal-catalog-decision strong { margin-top: 5px; font-size: .68rem; line-height: 1.5; }
.tal-catalog-output { margin: -5px 0 14px; padding: 12px; border: 1px solid #d9e6df; border-radius: 10px; background: #f2f8f4; }
.tal-catalog-output small, .tal-catalog-output strong { display: block; }
.tal-catalog-output small, .tal-catalog-repeat small { color: #65766d; font-size: .57rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.tal-catalog-output strong { margin-top: 5px; font-size: .68rem; line-height: 1.5; }
.tal-catalog-repeat { display: flex; align-items: flex-start; gap: 9px; margin: 0 0 15px; padding: 11px 12px; border-radius: 10px; color: #5b645f; background: #f2f3ef; }
.tal-catalog-repeat > i { margin-top: 2px; color: #4b6b59; font-size: .68rem; }
.tal-catalog-repeat p { min-height: 0 !important; margin: 4px 0 0 !important; color: #5b6762 !important; font-size: .64rem !important; line-height: 1.5 !important; }
.tal-catalog-grid dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 17px 0; }
.tal-catalog-grid dl div { padding: 9px; border-radius: 9px; background: #f2f3ef; }
.tal-catalog-grid dt { color: #78848a; font-size: .56rem; text-transform: uppercase; }
.tal-catalog-grid dd { margin: 4px 0 0; font-size: .68rem; font-weight: 750; line-height: 1.35; }
.tal-catalog-requirement { display: flex; align-items: flex-start; gap: 8px; min-height: 0 !important; margin: 0 0 14px !important; padding: 10px 11px; border-radius: 9px; color: #694f12 !important; background: #fff3cf; font-size: .64rem !important; }
.tal-catalog-grid details { border-top: 1px solid #e7e9e5; padding-top: 12px; color: #5f6c72; font-size: .67rem; }
.tal-catalog-grid summary { color: var(--tal-ink); font-weight: 800; cursor: pointer; }
.tal-catalog-grid details p { line-height: 1.5; }
.tal-inline-requirement { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 7px 9px; padding: 11px; border: 1px solid #e4c86b; border-radius: 10px; color: #674e12; background: #fff6d8; font-size: .66rem; line-height: 1.5; }
.tal-inline-requirement[hidden] { display: none; }
.tal-inline-requirement a { grid-column: 2; color: #243f34; font-weight: 850; text-decoration: underline; }
.tal-coordinator-decision-guide { margin: 0 0 17px; border: 1px solid #dbe1db; border-radius: 13px; background: #f8faf6; }
.tal-coordinator-decision-guide > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px; cursor: pointer; list-style: none; }
.tal-coordinator-decision-guide > summary::-webkit-details-marker { display: none; }
.tal-coordinator-decision-guide > summary small,
.tal-coordinator-decision-guide > summary strong { display: block; }
.tal-coordinator-decision-guide > summary small { color: #68766f; font-size: .55rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.tal-coordinator-decision-guide > summary strong { margin-top: 4px; font-size: .72rem; line-height: 1.4; }
.tal-coordinator-decision-guide > summary > i { font-size: .62rem; transition: transform .16s ease; }
.tal-coordinator-decision-guide[open] > summary { border-bottom: 1px solid #e0e5df; }
.tal-coordinator-decision-guide[open] > summary > i { transform: rotate(180deg); }
.tal-coordinator-gates { padding: 13px 13px 9px; }
.tal-coordinator-gates > p { margin: 0 0 9px; color: #5e6d66; font-size: .64rem; line-height: 1.5; }
.tal-coordinator-gates ol { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.tal-coordinator-gates li { display: flex; align-items: center; gap: 8px; padding: 8px 9px; border-radius: 8px; background: #fff; font-size: .61rem; font-weight: 750; line-height: 1.4; }
.tal-coordinator-gates li b { display: grid; flex: 0 0 22px; width: 22px; height: 22px; place-items: center; border-radius: 50%; color: var(--tal-night); background: var(--tal-acid); font: 850 .55rem/1 ui-monospace, monospace; }
.tal-coordinator-matrix { display: grid; gap: 6px; padding: 0 13px 10px; }
.tal-coordinator-matrix article { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1fr); gap: 7px 9px; padding: 10px; border: 1px solid #e1e6e0; border-radius: 9px; background: #fff; }
.tal-coordinator-matrix article > strong { grid-column: 1 / -1; font-size: .65rem; }
.tal-coordinator-matrix span { color: #5e6d66; font-size: .58rem; line-height: 1.42; }
.tal-coordinator-matrix span:nth-of-type(2) { grid-column: 1 / -1; }
.tal-coordinator-matrix small { display: block; margin-bottom: 3px; color: #78847e; font-size: .5rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.tal-coordinator-decision-guide__boundary { display: flex; align-items: flex-start; gap: 7px; margin: 0; padding: 11px 13px; border-top: 1px solid #e0e5df; color: #5a665f; background: #eff4ec; font-size: .59rem; line-height: 1.5; }
.tal-coordinator-decision-guide__boundary i { margin-top: 2px; color: #557260; }
.tal-coordinator-decision-guide--wide { margin: 0 0 24px; border-radius: 17px; background: #fff; box-shadow: 0 13px 34px rgba(16,32,42,.05); }
.tal-coordinator-decision-guide--wide > summary { padding: 18px 20px; }
.tal-coordinator-decision-guide--wide > summary small { font-size: .61rem; }
.tal-coordinator-decision-guide--wide > summary strong { font-size: .94rem; }
.tal-coordinator-decision-guide--wide .tal-coordinator-gates { padding: 16px 20px 12px; }
.tal-coordinator-decision-guide--wide .tal-coordinator-gates ol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tal-coordinator-decision-guide--wide .tal-coordinator-gates li { padding: 11px; font-size: .68rem; }
.tal-coordinator-decision-guide--wide .tal-coordinator-matrix { padding: 0 20px 15px; }
.tal-coordinator-decision-guide--wide .tal-coordinator-matrix article { grid-template-columns: minmax(130px, .7fr) minmax(145px, .85fr) minmax(260px, 1.7fr) minmax(125px, .7fr); align-items: start; padding: 12px 14px; }
.tal-coordinator-decision-guide--wide .tal-coordinator-matrix article > strong,
.tal-coordinator-decision-guide--wide .tal-coordinator-matrix span:nth-of-type(2) { grid-column: auto; }
.tal-coordinator-decision-guide--wide .tal-coordinator-matrix article > strong { font-size: .7rem; }
.tal-coordinator-decision-guide--wide .tal-coordinator-matrix span { font-size: .63rem; }
.tal-coordinator-decision-guide--wide .tal-coordinator-decision-guide__boundary { padding: 13px 20px; font-size: .65rem; }
.tal-reminder-policy { display: flex; align-items: flex-start; gap: 10px; padding: 12px; border: 1px solid #c9ddcf; border-radius: 11px; color: #315a46; background: #edf7f1; }
.tal-reminder-policy > i { margin-top: 2px; }
.tal-reminder-policy strong { display: block; font-size: .7rem; }
.tal-reminder-policy p { margin: 4px 0 0; color: #526c60; font-size: .64rem; line-height: 1.5; }
.tal-reminder-policy small { display: block; margin-top: 7px; padding-top: 7px; border-top: 1px solid #d2e4d7; color: #3d614f; font-size: .59rem; font-weight: 750; line-height: 1.45; }
.tal-reporting-mode { display: grid; gap: 8px; margin: 0; padding: 0; border: 0; }
.tal-reporting-mode > legend { margin: 0 0 2px; color: #59676d; font-size: .62rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.tal-reporting-mode > label { position: relative; display: block; margin: 0; cursor: pointer; }
.tal-reporting-mode input { position: absolute; opacity: 0; pointer-events: none; }
.tal-reporting-mode label > span { display: block; padding: 12px 13px; border: 1px solid #d9dfd9; border-radius: 11px; background: #f9faf7; transition: .16s ease; }
.tal-reporting-mode label > span strong,
.tal-reporting-mode label > span small { display: block; }
.tal-reporting-mode label > span strong { color: var(--tal-ink); font-size: .68rem; }
.tal-reporting-mode label > span strong i { width: 19px; color: #4e725e; }
.tal-reporting-mode label > span small { margin-top: 5px; color: #6d7a80; font-size: .6rem; line-height: 1.5; }
.tal-reporting-mode input:focus + span { outline: 3px solid rgba(90, 129, 104, .18); }
.tal-reporting-mode input:checked + span { border-color: #8eb29a; background: #edf7f1; box-shadow: inset 4px 0 #5f9672; }
.tal-data-stack article { display: flex; align-items: flex-start; gap: 11px; padding: 12px 0; border-top: 1px solid #e9ece8; }
.tal-data-stack article b { color: #71806a; font: 800 .66rem/1.4 ui-monospace, monospace; }
.tal-data-stack article strong { font-size: .75rem; }
.tal-data-stack article p { margin: 4px 0 0; color: #6d7a80; font-size: .68rem; line-height: 1.5; }
.tal-ops-privacy, .tal-survey-assurance { display: flex; align-items: flex-start; gap: 13px; padding: 17px; border: 1px solid #bdd7ca; border-radius: 16px; color: #285743; background: #edf7f1; }
.tal-ops-privacy strong, .tal-survey-assurance strong { font-size: .78rem; }
.tal-ops-privacy p, .tal-survey-assurance p { margin: 4px 0 0; font-size: .68rem; line-height: 1.55; }

.tal-survey-page { max-width: 1120px; }
.tal-survey-assurance { margin-bottom: 20px; }
.tal-survey-assurance--identified { border-color: #d5c88c; color: #655418; background: #fff8dc; }
.tal-survey-assurance--identified > i { margin-top: 2px; color: #9a7b19; }
.tal-survey-assurance--programme { border-color: #b9d1d8; color: #234f5b; background: #edf7f8; }
.tal-survey-assurance--programme > i { margin-top: 2px; color: #2e7586; }
.tal-survey-assurance--programme p + p { margin-top: 9px; padding-top: 9px; border-top: 1px solid rgba(46,117,134,.17); }
.tal-survey-purpose { margin: 0 0 22px; padding: 21px; border: 1px solid #d8ded8; border-radius: 18px; background: #fff; box-shadow: 0 13px 32px rgba(16,32,42,.05); }
.tal-survey-purpose__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.tal-survey-purpose__heading h2 { margin: 5px 0 0; font-size: 1.18rem; letter-spacing: -.025em; }
.tal-survey-purpose__heading > span { padding: 7px 9px; border-radius: 999px; color: #365947; background: #eaf3e8; font-size: .6rem; font-weight: 850; }
.tal-survey-purpose__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.tal-survey-purpose__grid article { display: flex; align-items: flex-start; gap: 11px; padding: 14px; border-radius: 12px; background: #f3f5f1; }
.tal-survey-purpose__grid i { display: grid; flex: 0 0 33px; width: 33px; height: 33px; place-items: center; border-radius: 9px; color: #375a4b; background: #dfebe1; }
.tal-survey-purpose__grid strong { display: block; font-size: .7rem; }
.tal-survey-purpose__grid p { margin: 5px 0 0; color: #65736d; font-size: .65rem; line-height: 1.5; }
.tal-survey-after-submit { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 13px 0 0; padding: 0; list-style: none; }
.tal-survey-after-submit li { display: flex; align-items: flex-start; gap: 9px; padding: 11px; border: 1px solid #e0e5df; border-radius: 10px; }
.tal-survey-after-submit b { display: grid; flex: 0 0 25px; width: 25px; height: 25px; place-items: center; border-radius: 50%; color: var(--tal-night); background: var(--tal-acid); font: 850 .58rem/1 ui-monospace, monospace; }
.tal-survey-after-submit strong,
.tal-survey-after-submit small { display: block; }
.tal-survey-after-submit strong { font-size: .65rem; }
.tal-survey-after-submit small { margin-top: 3px; color: #748087; font-size: .59rem; line-height: 1.42; }
.tal-survey-complete-actions { display: flex; justify-content: center; gap: 9px; flex-wrap: wrap; }
.tal-scale-legend { display: flex; justify-content: space-between; gap: 12px; margin: 0 0 18px; padding: 12px 16px; border-radius: 12px; color: #5e6b71; background: #e9e9e3; font-size: .67rem; font-weight: 700; }
.tal-survey-construct { margin: 30px 0 11px; color: #55705f; font-size: .78rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.tal-question-card { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 22px; margin: 0 0 9px; padding: 18px 20px; border: 1px solid var(--tal-line); border-radius: 14px; background: #fff; }
.tal-question-card legend { display: flex; align-items: flex-start; gap: 11px; width: auto; margin: 0; color: var(--tal-ink); font-size: .8rem; font-weight: 700; line-height: 1.5; }
.tal-question-card legend span { flex: 0 0 auto; color: #7f8b8e; font: 750 .62rem/1.6 ui-monospace, monospace; }
.tal-rating { display: flex; gap: 6px; }
.tal-rating label { margin: 0; cursor: pointer; }
.tal-rating input { position: absolute; opacity: 0; pointer-events: none; }
.tal-rating span { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid #cfd5d1; border-radius: 9px; color: #59666c; background: #fafbf9; font-size: .7rem; font-weight: 800; transition: .15s ease; }
.tal-rating input:focus + span { outline: 3px solid rgba(102, 139, 113, .2); }
.tal-rating input:checked + span { border-color: var(--tal-night); color: var(--tal-night); background: var(--tal-acid); }
.tal-survey-context { margin-top: 28px; padding: 22px; border: 1px solid #d7dfd5; border-radius: 18px; background: #f7f9f5; }
.tal-survey-context > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.tal-survey-context > header h2 { margin: 5px 0 0; font-size: 1.2rem; }
.tal-survey-context > header > span { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border-radius: 999px; color: #365d4b; background: #e3efe3; font-size: .6rem; font-weight: 850; white-space: nowrap; }
.tal-survey-context > p { max-width: 880px; margin: 12px 0 18px; color: #667477; font-size: .67rem; line-height: 1.6; }
.tal-survey-context__questions { display: grid; gap: 12px; }
.tal-survey-context__questions label { display: grid; gap: 7px; margin: 0; padding: 16px; border: 1px solid #dce2da; border-radius: 13px; background: #fff; }
.tal-survey-context__questions strong { font-size: .76rem; line-height: 1.5; }
.tal-survey-context__questions small { color: #69777a; font-size: .63rem; line-height: 1.5; }
.tal-survey-context__questions textarea { width: 100%; min-height: 112px; padding: 12px 13px; resize: vertical; border: 1px solid #ccd6ce; border-radius: 11px; color: var(--tal-ink); background: #fbfcfa; font: 500 .76rem/1.55 inherit; outline: none; }
.tal-survey-context__questions textarea:focus { border-color: #719078; box-shadow: 0 0 0 3px rgba(91, 132, 102, .13); }
.tal-survey-context__questions em { color: #7a8688; font-size: .58rem; font-style: normal; text-align: right; }
.tal-survey-submit { position: sticky; bottom: 14px; z-index: 4; display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 22px; padding: 17px 19px; border: 1px solid rgba(255,255,255,.13); border-radius: 15px; color: #fff; background: rgba(11,24,34,.96); box-shadow: 0 16px 40px rgba(11,24,34,.25); backdrop-filter: blur(12px); }
.tal-survey-submit strong { font-size: .8rem; }
.tal-survey-submit p { margin: 3px 0 0; color: #aeb9be; font-size: .66rem; }
.tal-identified-acknowledgement { display: flex; align-items: flex-start; gap: 12px; margin: 22px 0 -8px; padding: 16px 18px; border: 1px solid #cdbf78; border-radius: 14px; color: #5d4d14; background: #fff8d8; cursor: pointer; }
.tal-identified-acknowledgement input { width: 18px; height: 18px; flex: 0 0 18px; margin-top: 2px; accent-color: #0b1822; }
.tal-identified-acknowledgement strong,
.tal-identified-acknowledgement small { display: block; }
.tal-identified-acknowledgement strong { font-size: .76rem; }
.tal-identified-acknowledgement small { margin-top: 4px; font-size: .65rem; line-height: 1.5; }
.tal-programme-acknowledgement { border-color: #9ebd91; color: #234b34; background: #edf7e9; }
.tal-programme-acknowledgement input { accent-color: #356d4a; }

@media (max-width: 1100px) {
    .tal-ops-layout, .tal-ops-layout--teams { grid-template-columns: 1fr; }
    .tal-ops-side { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .tal-ops-side > *:last-child:nth-child(odd) { grid-column: 1 / -1; }
    .tal-survey-program { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .tal-team-measurement-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .tal-coordinator-decision-guide--wide .tal-coordinator-matrix article { grid-template-columns: minmax(120px, .7fr) minmax(0, 1fr); }
    .tal-coordinator-decision-guide--wide .tal-coordinator-matrix span:nth-of-type(2) { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
    .tal-ops-page { padding: 26px 16px 55px; }
    .tal-ops-hero { align-items: flex-start; flex-direction: column; }
    .tal-ops-trust-note { max-width: 100%; border-radius: 13px; }
    .tal-ops-flow { grid-template-columns: 1fr; gap: 11px; }
    .tal-ops-flow > i { display: none; }
    .tal-ops-filter { align-items: stretch; flex-direction: column; }
    .tal-ops-filter label { flex-basis: auto; }
    .tal-ops-layout, .tal-ops-side { grid-template-columns: 1fr; }
    .tal-ops-side > *:last-child:nth-child(odd) { grid-column: auto; }
    .tal-work-meta, .tal-catalog-grid, .tal-team-switcher, .tal-team-profile__summary, .tal-member-management-guide > div, .tal-survey-method__grid, .tal-survey-program, .tal-survey-validation, .tal-team-measurement-steps, .tal-team-measurement-roles, .tal-survey-purpose__grid, .tal-survey-after-submit, .tal-survey-assignment__context { grid-template-columns: 1fr; }
    .tal-team-measurement-flow__heading, .tal-survey-purpose__heading { flex-direction: column; }
    .tal-team-measurement-flow__heading > span { align-self: flex-start; white-space: normal; }
    .tal-work-process-note { grid-template-columns: 40px minmax(0, 1fr); }
    .tal-work-process-note > a { grid-column: 2; white-space: normal; }
    .tal-coordinator-decision-guide--wide .tal-coordinator-gates ol,
    .tal-coordinator-decision-guide--wide .tal-coordinator-matrix article { grid-template-columns: 1fr; }
    .tal-coordinator-decision-guide--wide .tal-coordinator-matrix span:nth-of-type(2) { grid-column: auto; }
    .tal-survey-validation nav { grid-column: auto; }
    .tal-survey-program article { min-height: 0; }
    .tal-team-selector-panel__heading, .tal-invite-team-context { align-items: flex-start; flex-direction: column; }
    .tal-team-selector-panel__heading .tal-ops-count { align-self: flex-start; }
    .tal-invite-team-context > a { margin-left: 39px; }
    .tal-ops-scenario { grid-template-columns: 1fr; }
    .tal-survey-assignment { grid-template-columns: 40px minmax(0,1fr); }
    .tal-survey-assignment > .tal-ops-primary, .tal-survey-assignment > .tal-ops-demo-label, .tal-survey-assignment > .tal-ops-complete { grid-column: 2; justify-self: start; }
    .tal-question-card { grid-template-columns: 1fr; }
    .tal-rating { justify-content: space-between; }
    .tal-rating span { width: 40px; height: 40px; }
    .tal-scale-legend { align-items: flex-start; flex-direction: column; }
    .tal-survey-context > header { flex-direction: column; }
    .tal-survey-context > header > span { white-space: normal; }
    .tal-survey-submit { align-items: stretch; flex-direction: column; }
    .tal-member-list article { grid-template-columns: 40px minmax(0,1fr); }
    .tal-member-alias { grid-column: 2; justify-self: start; }
    .tal-member-actions { grid-column: 1 / -1; justify-content: flex-start; padding-left: 51px; }
    .tal-member-team-map { grid-column: 1 / -1; padding-left: 51px; }
    .tal-member-team-map > div { grid-template-columns: 1fr; }
    .tal-invitation-registry__heading { align-items: flex-start; flex-direction: column; }
    .tal-invitation-list article { grid-template-columns: 34px minmax(0,1fr); }
    .tal-invitation-state { grid-column: 2; justify-self: start; }
    .tal-invitation-timing { grid-column: 2; }
}

.tal-admin-page .btn-primary,
.tal-admin-page .btn-success,
.tal-admin-page button[type="submit"] {
    border-color: var(--tal-night) !important;
    color: #fff !important;
    background: var(--tal-night) !important;
}

.tal-admin-page .btn-primary:hover,
.tal-admin-page .btn-success:hover,
.tal-admin-page button[type="submit"]:hover {
    border-color: #203945 !important;
    background: #203945 !important;
}

.tal-admin-page .btn-outline-primary,
.tal-admin-page .btn-light,
.tal-admin-page .btn-secondary {
    border-color: #ccd4d1 !important;
    color: var(--tal-ink) !important;
    background: #fff !important;
}

.tal-admin-page .btn-danger,
.tal-admin-page .btn-outline-danger {
    border-color: rgba(255, 115, 93, .5) !important;
    color: #a53c2d !important;
    background: rgba(255, 115, 93, .08) !important;
}

.tal-admin-page .button-bar-wrapper,
.tal-admin-page .ogan-toolbar {
    gap: 9px;
    margin-bottom: 18px;
}

.tal-admin-page .table-responsive,
.tal-admin-page .tableContainer,
.tal-admin-page .table-scroll-wrapper,
.tal-admin-page .filtertable-wrapper {
    border: 1px solid #e0e4e1;
    border-radius: 12px;
    background: #fff;
}

.tal-admin-page .table {
    margin-bottom: 0;
    color: var(--tal-ink);
    background: #fff;
    font-size: .71rem;
}

.tal-admin-page .table thead th,
.tal-admin-page #filtertable thead th,
.tal-admin-page .ogan-list-table thead th,
.tal-admin-page .tableContainer thead.text-white th {
    padding: 13px 12px !important;
    border-top: 0 !important;
    border-bottom: 1px solid #dce2df !important;
    color: #5a686e !important;
    background: #f5f5f0 !important;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.tal-admin-page .table tbody td,
.tal-admin-page #filtertable tbody td {
    padding: 12px !important;
    border-color: #edf0ed !important;
    color: var(--tal-ink) !important;
    background: #fff !important;
}

.tal-admin-page .table tbody tr:hover td {
    background: #fafbf7 !important;
}

.tal-admin-page .ogan-table-actions .tableIcons {
    width: 34px;
    height: 34px;
    border: 1px solid #dce2df;
    border-radius: 9px;
    background: #fff;
}

.tal-admin-page .defaultEditMenu,
.tal-admin-page .dropdown-menu {
    overflow: hidden;
    padding: 6px;
    border: 1px solid #dce2df;
    border-radius: 11px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(9, 26, 36, .16);
}

.tal-admin-page .defaultEditMenu li a,
.tal-admin-page .dropdown-menu .dropdown-item {
    padding: 8px 10px;
    border-radius: 7px;
    color: var(--tal-ink);
    font-size: .7rem;
}

.tal-admin-page .defaultEditMenu li a:hover,
.tal-admin-page .dropdown-menu .dropdown-item:hover {
    color: var(--tal-ink);
    background: #f1f4ef;
}

.tal-admin-page .paginationNew,
.tal-admin-page .pagination,
.tal-admin-page .ogan-pagination {
    gap: 4px;
    margin: 16px 0 0;
}

.tal-admin-page .paginationNew > li > a,
.tal-admin-page .paginationNew > li > span,
.tal-admin-page .pagination .page-link,
.tal-admin-page .ogan-pagination li a {
    display: grid;
    min-width: 34px;
    min-height: 34px;
    place-items: center;
    border: 1px solid #dce2df !important;
    border-radius: 8px !important;
    color: var(--tal-ink) !important;
    background: #fff !important;
    font-size: .68rem;
}

.tal-admin-page .paginationNew > .active > a,
.tal-admin-page .paginationNew > .active > span,
.tal-admin-page .pagination .active .page-link,
.tal-admin-page .ogan-pagination .active a {
    border-color: var(--tal-night) !important;
    color: #fff !important;
    background: var(--tal-night) !important;
}

.tal-admin-page .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 18px;
    background: var(--tal-surface);
    box-shadow: var(--tal-shadow);
}

.tal-admin-page .modal-header,
.tal-admin-page .modal-footer {
    border-color: var(--tal-line);
}

.tal-admin-page .alert {
    border: 0;
    border-radius: 11px;
    font-size: .75rem;
}

.tal-admin-page #loading-overlay {
    z-index: 2000;
    background: rgba(11, 24, 34, .5) !important;
    backdrop-filter: blur(4px);
}

body.tal-admin-page[data-tal-theme="dark"] .tal-admin-heading__eyebrow,
body.tal-admin-page[data-tal-theme="dark"] .tal-admin-breadcrumbs .breadcrumb-item,
body.tal-admin-page[data-tal-theme="dark"] .tal-admin-breadcrumbs .breadcrumb-item a {
    color: #99a7ab;
}

body.tal-admin-page[data-tal-theme="dark"] .tal-admin-surface,
body.tal-admin-page[data-tal-theme="dark"] .card,
body.tal-admin-page[data-tal-theme="dark"] .table-responsive,
body.tal-admin-page[data-tal-theme="dark"] .tableContainer,
body.tal-admin-page[data-tal-theme="dark"] .table-scroll-wrapper,
body.tal-admin-page[data-tal-theme="dark"] .filtertable-wrapper,
body.tal-admin-page[data-tal-theme="dark"] .table,
body.tal-admin-page[data-tal-theme="dark"] .table tbody td,
body.tal-admin-page[data-tal-theme="dark"] #filtertable tbody td,
body.tal-admin-page[data-tal-theme="dark"] .ogan-table-actions .tableIcons,
body.tal-admin-page[data-tal-theme="dark"] .defaultEditMenu,
body.tal-admin-page[data-tal-theme="dark"] .dropdown-menu {
    border-color: rgba(255, 255, 255, .11) !important;
    color: var(--tal-ink) !important;
    background: #152630 !important;
}

body.tal-admin-page[data-tal-theme="dark"] .card-header,
body.tal-admin-page[data-tal-theme="dark"] .card-footer,
body.tal-admin-page[data-tal-theme="dark"] .table thead th,
body.tal-admin-page[data-tal-theme="dark"] #filtertable thead th,
body.tal-admin-page[data-tal-theme="dark"] .ogan-list-table thead th,
body.tal-admin-page[data-tal-theme="dark"] .tableContainer thead.text-white th {
    border-color: rgba(255, 255, 255, .11) !important;
    color: #aeb9bc !important;
    background: #0f202a !important;
}

body.tal-admin-page[data-tal-theme="dark"] .form-control,
body.tal-admin-page[data-tal-theme="dark"] .custom-select,
body.tal-admin-page[data-tal-theme="dark"] .selectize-input,
body.tal-admin-page[data-tal-theme="dark"] .addNewInputs input,
body.tal-admin-page[data-tal-theme="dark"] .addNewInputs select,
body.tal-admin-page[data-tal-theme="dark"] .addNewInputs textarea,
body.tal-admin-page[data-tal-theme="dark"] .panelSelectCustom input,
body.tal-admin-page[data-tal-theme="dark"] .panelSelectCustom select,
body.tal-admin-page[data-tal-theme="dark"] #filtertable input,
body.tal-admin-page[data-tal-theme="dark"] #filtertable select,
body.tal-admin-page[data-tal-theme="dark"] #filtertable textarea,
body.tal-admin-page[data-tal-theme="dark"] .selectize-dropdown {
    border-color: rgba(255, 255, 255, .15) !important;
    color: var(--tal-ink) !important;
    background: #0f202a !important;
}

body.tal-admin-page[data-tal-theme="dark"] .table tbody tr:hover td,
body.tal-admin-page[data-tal-theme="dark"] .defaultEditMenu li a:hover,
body.tal-admin-page[data-tal-theme="dark"] .dropdown-menu .dropdown-item:hover {
    background: #1d323d !important;
}

body.tal-admin-page[data-tal-theme="dark"] .defaultEditMenu li a,
body.tal-admin-page[data-tal-theme="dark"] .dropdown-menu .dropdown-item,
body.tal-admin-page[data-tal-theme="dark"] label,
body.tal-admin-page[data-tal-theme="dark"] .selectHeader {
    color: var(--tal-ink) !important;
}

@media (max-width: 767px) {
    .tal-admin-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .tal-admin-breadcrumbs .breadcrumb {
        justify-content: flex-start;
    }

    .tal-admin-surface {
        margin-inline: -10px;
        padding: 15px;
        border-radius: 15px;
    }

    .tal-admin-page .card-body,
    .tal-admin-page .card-footer {
        padding: 16px;
    }

    .tal-admin-page .addNewInputs .col-md-3,
    .tal-admin-page .addNewInputs [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

/* Team Autonomy Lab product shell — process-led navigation */
.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

:root {
    --tal-sidebar-width: 304px;
}

.tal-portal-shell {
    min-height: 100vh;
}

.tal-sidebar {
    border-right: 1px solid rgba(255, 255, 255, .08);
    background:
        radial-gradient(circle at 90% 2%, rgba(141, 216, 232, .12), transparent 18rem),
        linear-gradient(180deg, #0b1822 0%, #0d202a 100%);
    box-shadow: 16px 0 55px rgba(4, 14, 20, .11);
}

.tal-sidebar__brand {
    min-height: 74px;
    padding: 0 20px;
}

.tal-sidebar__brand .tal-brand {
    color: #fff;
}

.tal-sidebar__workspace {
    margin: 16px 14px 4px;
    padding: 15px 16px;
    border-color: rgba(215, 255, 104, .13);
    background: rgba(215, 255, 104, .035);
}

.tal-sidebar__workspace strong {
    font-size: .82rem;
}

.tal-sidebar__navigation {
    padding: 10px 11px 20px;
}

.tal-sidebar__section-label {
    margin: 18px 13px 8px;
    color: rgba(255, 255, 255, .38);
    font-size: .6rem;
}

.tal-sidebar__home,
.tal-process-link {
    position: relative;
    display: grid;
    width: 100%;
    min-height: 52px;
    align-items: center;
    gap: 11px;
    margin: 3px 0;
    padding: 8px 10px;
    border: 0;
    border-radius: 10px;
    color: rgba(255, 255, 255, .66) !important;
    background: transparent;
    text-align: left;
    text-decoration: none;
    grid-template-columns: 24px minmax(0, 1fr);
    transition: color .16s ease, background-color .16s ease, transform .16s ease;
}

.tal-sidebar__home {
    display: grid;
}

.tal-sidebar__home > i {
    width: 24px;
    color: rgba(255, 255, 255, .34);
    font-size: .76rem;
    text-align: center;
}

.tal-sidebar__home > span,
.tal-process-link > span {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.tal-sidebar__home strong,
.tal-process-link strong {
    color: inherit;
    font-size: .72rem;
    font-weight: 760;
    line-height: 1.25;
}

.tal-sidebar__home small,
.tal-process-link small {
    overflow: hidden;
    color: rgba(255, 255, 255, .36);
    font-size: .58rem;
    font-style: normal;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-process-link > b {
    display: grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 8px;
    color: rgba(255, 255, 255, .42);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .55rem;
    font-weight: 800;
}

.tal-sidebar__home:hover,
.tal-sidebar__home.is-active,
.tal-process-link:hover,
.tal-process-link.is-active {
    color: #fff !important;
    background: rgba(255, 255, 255, .075);
    text-decoration: none;
}

.tal-sidebar__home.is-active,
.tal-process-link.is-active {
    box-shadow: inset 3px 0 var(--tal-acid);
}

.tal-sidebar__home.is-active > i,
.tal-process-link.is-active > b {
    border-color: rgba(215, 255, 104, .35);
    color: var(--tal-acid);
}

.tal-sidebar__home.is-active small,
.tal-process-link.is-active small {
    color: rgba(255, 255, 255, .54);
}

.tal-sidebar__help {
    cursor: pointer;
    font-family: inherit;
}

.tal-sidebar__footer {
    padding: 11px 13px 13px;
    background: rgba(0, 0, 0, .07);
}

.tal-topbar {
    min-height: 74px;
    padding: 9px clamp(18px, 2.8vw, 44px);
    background: rgba(244, 241, 233, .95);
}

.tal-topbar__page {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.tal-topbar__page > span {
    color: #869095;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.tal-topbar__page > strong {
    overflow: hidden;
    color: var(--tal-ink);
    font-size: .8rem;
    font-weight: 780;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-language-picker--portal,
.tal-language-picker--nav {
    width: auto;
    min-width: 184px;
    flex: 0 0 auto;
    justify-content: space-between;
    padding-inline: 12px;
}

.tal-language-picker select,
.tal-language-picker--portal select,
.tal-language-picker--nav select {
    width: 142px;
    max-width: none;
    color: var(--tal-ink);
    font-size: .72rem;
    text-overflow: ellipsis;
}

.tal-profile-button {
    color: var(--tal-ink);
    text-decoration: none;
}

.tal-workspace-content {
    width: 100%;
    max-width: 1540px;
    padding: clamp(25px, 3vw, 46px) clamp(20px, 3vw, 48px);
}

.tal-workspace-footer {
    padding-right: clamp(20px, 3vw, 48px);
    padding-left: clamp(20px, 3vw, 48px);
}

/* Dashboard: scores and next action are visible before the module catalogue */
.tal-dashboard {
    gap: 20px;
}

.tal-dashboard-overview {
    display: grid;
    align-items: end;
    gap: 28px;
    padding: clamp(24px, 3vw, 38px);
    border: 1px solid rgba(16, 32, 42, .09);
    border-radius: 20px;
    background:
        linear-gradient(110deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .58)),
        radial-gradient(circle at 90% 15%, rgba(141, 216, 232, .27), transparent 22rem);
    box-shadow: 0 14px 45px rgba(9, 26, 36, .055);
    grid-template-columns: minmax(0, 1fr) auto;
}

.tal-dashboard-overview .tal-role-chip {
    margin-bottom: 13px;
}

.tal-dashboard-overview h1 {
    max-width: 900px;
    margin: 0;
    color: var(--tal-ink);
    font-size: clamp(1.9rem, 3vw, 3rem);
    font-weight: 760;
    letter-spacing: -.045em;
    line-height: 1.02;
}

.tal-dashboard-overview > div:first-child > p:last-child {
    max-width: 830px;
    margin: 14px 0 0;
    color: #67757b;
    font-size: .84rem;
    line-height: 1.65;
}

.tal-dashboard-overview__actions {
    display: flex;
    min-width: 205px;
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
}

.tal-text-link {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #5b696f;
    font-size: .69rem;
    font-weight: 760;
}

.tal-text-link:hover {
    color: var(--tal-ink);
    text-decoration: none;
}

.tal-command-grid {
    display: grid;
    align-items: stretch;
    gap: 16px;
    grid-template-columns: minmax(0, 1.8fr) minmax(330px, .8fr);
}

.tal-scoreboard,
.tal-next-step {
    overflow: hidden;
    border: 1px solid rgba(16, 32, 42, .09);
    border-radius: 18px;
    background: rgba(255, 255, 255, .84);
    box-shadow: 0 14px 42px rgba(9, 26, 36, .05);
}

.tal-panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 23px 25px 18px;
    border-bottom: 1px solid var(--tal-line);
}

.tal-panel-heading .tal-eyebrow {
    margin-bottom: 5px;
}

.tal-panel-heading h2,
.tal-next-step h2 {
    margin: 0;
    color: var(--tal-ink);
    font-size: 1.05rem;
    font-weight: 780;
    letter-spacing: -.025em;
}

.tal-data-state {
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    gap: 7px;
    padding: 0 9px;
    border: 1px solid #d9dfdc;
    border-radius: 999px;
    color: #69767b;
    background: #f8f8f4;
    font-size: .58rem;
    font-weight: 760;
    white-space: nowrap;
}

.tal-data-state i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #aab3b5;
}

.tal-scoreboard.has-team-scope .tal-data-state i {
    background: #4ea46d;
}

.tal-score-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tal-score-grid article {
    min-width: 0;
    padding: 22px 20px 20px;
}

.tal-score-grid article + article {
    border-left: 1px solid var(--tal-line);
}

.tal-score-grid span,
.tal-score-grid small {
    display: block;
    color: #738086;
    font-size: .62rem;
    line-height: 1.4;
}

.tal-score-grid span {
    min-height: 35px;
    color: #55646a;
    font-weight: 760;
}

.tal-score-grid strong {
    display: flex;
    align-items: baseline;
    margin: 4px 0 8px;
    color: var(--tal-ink);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 2.15rem;
    line-height: 1;
}

.tal-score-grid strong b {
    font: inherit;
}

.tal-score-grid strong small {
    margin-left: 2px;
    color: #748187;
    font-size: .72rem;
    font-weight: 760;
}

.tal-score-grid article > em {
    display: block;
    margin: -3px 0 8px;
    color: #345d4e;
    font-size: .59rem;
    font-style: normal;
    font-weight: 800;
}

.tal-score-bands {
    display: grid;
    margin: 0 20px 14px;
    overflow: hidden;
    border: 1px solid var(--tal-line);
    border-radius: 11px;
    background: #fbfcf8;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.tal-score-bands > span {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 7px;
    padding: 9px 11px;
}

.tal-score-bands > span + span {
    border-left: 1px solid var(--tal-line);
}

.tal-score-bands b {
    color: var(--tal-ink);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .62rem;
    white-space: nowrap;
}

.tal-score-bands em {
    overflow: hidden;
    color: #65736f;
    font-size: .57rem;
    font-style: normal;
    font-weight: 720;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-scoreboard__notice {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0 20px 20px;
    padding: 13px 15px;
    border-radius: 11px;
    color: #617077;
    background: #f2f4ef;
}

.tal-scoreboard__notice i {
    margin-top: 2px;
    color: #63818a;
    font-size: .68rem;
}

.tal-scoreboard__notice p {
    margin: 0;
    font-size: .62rem;
    line-height: 1.55;
}

.tal-scoreboard__notice--structural {
    margin-top: -8px;
    background: #f4f1e9;
}

.tal-scoreboard__notice--structural i {
    color: #74694f;
}

.tal-next-step {
    display: flex;
    flex-direction: column;
    color: #fff;
    background: var(--tal-night);
}

.tal-next-step__status {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 17px 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .46);
    font-size: .58rem;
}

.tal-next-step__status strong {
    color: var(--tal-acid);
    font-size: .58rem;
}

.tal-mini-flow {
    display: grid;
    margin: 0;
    padding: 14px 14px 0;
    list-style: none;
    grid-template-columns: repeat(5, 1fr);
}

.tal-mini-flow li {
    position: relative;
    min-width: 0;
    color: rgba(255, 255, 255, .36);
    text-align: center;
}

.tal-mini-flow li::before {
    position: absolute;
    z-index: 0;
    top: 11px;
    right: 50%;
    left: -50%;
    height: 1px;
    background: rgba(255, 255, 255, .1);
    content: "";
}

.tal-mini-flow li:first-child::before {
    display: none;
}

.tal-mini-flow span {
    position: relative;
    z-index: 1;
    display: grid;
    width: 23px;
    height: 23px;
    margin: 0 auto 6px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 50%;
    background: var(--tal-night);
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .49rem;
}

.tal-mini-flow .is-ready span {
    border-color: var(--tal-acid);
    color: var(--tal-night);
    background: var(--tal-acid);
}

.tal-mini-flow small {
    display: block;
    overflow: hidden;
    font-size: .49rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tal-next-step__body {
    display: flex;
    flex: 1;
    align-items: flex-start;
    flex-direction: column;
    padding: 24px 22px 22px;
}

.tal-next-step__body .tal-eyebrow {
    color: var(--tal-acid);
}

.tal-next-step h2 {
    color: #fff;
    font-size: 1.28rem;
}

.tal-next-step__body > p:not(.tal-eyebrow) {
    margin: 10px 0 20px;
    color: rgba(255, 255, 255, .56);
    font-size: .67rem;
    line-height: 1.58;
}

.tal-next-step .tal-secondary-button {
    width: 100%;
    margin-top: auto;
    border-color: rgba(255, 255, 255, .16);
    color: #fff;
    background: rgba(255, 255, 255, .07);
}

.tal-next-step .tal-secondary-button:hover {
    border-color: var(--tal-acid);
    color: var(--tal-night);
    background: var(--tal-acid);
}

/* Generated records are presented as product modules, not a generator console */
.tal-admin-heading {
    margin-bottom: 18px;
}

.tal-admin-heading__eyebrow {
    color: #6d7a80;
}

.tal-admin-heading h1 {
    font-size: clamp(1.65rem, 2.5vw, 2.35rem);
}

.tal-admin-breadcrumbs {
    display: none;
}

.tal-admin-surface {
    min-height: 0;
    padding: clamp(18px, 2.2vw, 28px);
    border-radius: 17px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 12px 42px rgba(9, 26, 36, .055);
}

.tal-admin-surface > br,
.tal-admin-surface > form + br {
    display: none;
}

.tal-admin-surface .addNewInputs {
    margin-top: 0;
}

.tal-admin-page .buttonClassic,
.tal-admin-page .buttonClassicThree,
.tal-admin-page .buttonsContainerThree .buttonClassic,
.tal-admin-page .inputButton button {
    min-height: 40px;
    margin: 0 7px 0 0;
    padding: 9px 16px;
    border: 1px solid var(--tal-night) !important;
    border-radius: 9px;
    color: #fff !important;
    background: var(--tal-night) !important;
    font-size: .72rem;
    font-weight: 760;
    box-shadow: none;
}

.tal-admin-page .buttonClassicOne,
.tal-admin-page .buttonClassicTwo {
    min-height: 40px;
    margin: 0 7px 0 0;
    padding: 9px 16px;
    border: 1px solid #ccd4d1 !important;
    border-radius: 9px;
    color: var(--tal-ink) !important;
    background: #fff !important;
    font-size: .72rem;
    font-weight: 760;
}

.tal-admin-page #filtertable select,
.tal-admin-page #filtertable input {
    width: min(100%, 220px) !important;
    min-height: 38px;
    padding: 7px 10px !important;
}

.tal-admin-page[data-tal-action="MembershipView"] .tal-admin-content {
    max-width: 1160px;
}

.tal-admin-page[data-tal-action="MembershipView"] .tal-admin-surface {
    max-width: 920px;
    padding: clamp(24px, 3vw, 38px);
}

.tal-admin-page[data-tal-action="MembershipView"] .addNewInputs {
    display: grid;
    align-items: start;
    gap: 18px 20px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tal-admin-page[data-tal-action="MembershipView"] .addNewInputs > [class*="col-"],
.tal-admin-page[data-tal-action="MembershipView"] .addNewInputs > .field-wrapper,
.tal-admin-page[data-tal-action="MembershipView"] .addNewInputs > .panelSelectCustom {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    flex: 0 0 auto;
}

.tal-admin-page[data-tal-action="MembershipView"] .addNewInputs .inputButton,
.tal-admin-page[data-tal-action="MembershipView"] .addNewInputs > button {
    grid-column: 1 / -1;
}

.tal-record-empty-state {
    display: grid;
    min-height: 220px;
    place-items: center;
    padding: 32px 20px;
    border: 1px dashed #ccd5d2;
    border-radius: 14px;
    color: #6c797e;
    background: rgba(248, 248, 244, .84);
    text-align: center;
}

.tal-record-empty-state__icon {
    display: grid;
    width: 44px;
    height: 44px;
    margin: 0 auto 13px;
    place-items: center;
    border-radius: 13px;
    color: var(--tal-night);
    background: #e5ebe5;
}

.tal-record-empty-state strong {
    display: block;
    color: var(--tal-ink);
    font-size: .86rem;
}

.tal-record-empty-state p {
    max-width: 460px;
    margin: 7px auto 0;
    font-size: .68rem;
    line-height: 1.55;
}

/* Evidence workspace */
.tal-evidence-entry {
    margin-bottom: 28px;
    padding: clamp(20px, 2.6vw, 34px);
    border: 1px solid rgba(18, 38, 47, .08);
    border-radius: 22px;
    background: rgba(255, 255, 255, .86);
    box-shadow: 0 18px 56px rgba(9, 26, 36, .06);
}

.tal-evidence-tabs {
    display: grid;
    gap: 10px;
    margin: 20px 0 24px;
    padding: 6px;
    border-radius: 16px;
    background: #edf0ea;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tal-evidence-tabs button {
    display: flex;
    min-width: 0;
    min-height: 68px;
    align-items: center;
    gap: 12px;
    padding: 11px 14px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: #5d696e;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.tal-evidence-tabs button > i {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: 10px;
    color: var(--tal-night);
    background: rgba(255, 255, 255, .72);
}

.tal-evidence-tabs button span,
.tal-evidence-tabs button strong,
.tal-evidence-tabs button small {
    display: block;
}

.tal-evidence-tabs button strong {
    color: var(--tal-ink);
    font-size: .76rem;
}

.tal-evidence-tabs button small {
    margin-top: 3px;
    color: #748087;
    font-size: .6rem;
}

.tal-evidence-tabs button.is-active {
    border-color: rgba(18, 38, 47, .08);
    background: #fff;
    box-shadow: 0 8px 22px rgba(9, 26, 36, .07);
}

.tal-evidence-tabs button.is-active > i {
    color: var(--tal-night);
    background: var(--tal-acid);
}

.tal-evidence-form-panel {
    display: none;
    align-items: start;
    gap: clamp(24px, 4vw, 56px);
    padding: clamp(20px, 3vw, 36px);
    border: 1px solid #dde3de;
    border-radius: 18px;
    background: #fbfbf8;
    grid-template-columns: minmax(220px, .72fr) minmax(360px, 1.28fr);
}

.tal-evidence-form-panel.is-active {
    display: grid;
}

.tal-evidence-form-copy {
    position: sticky;
    top: 92px;
}

.tal-evidence-form-copy h3 {
    margin: 15px 0 9px;
    color: var(--tal-ink);
    font-size: clamp(1.25rem, 2vw, 1.7rem);
    line-height: 1.05;
}

.tal-evidence-form-copy p {
    margin: 0;
    color: #66747a;
    font-size: .72rem;
    line-height: 1.62;
}

.tal-evidence-form {
    display: grid;
    gap: 15px;
}

.tal-evidence-preview-form {
    display: grid;
    gap: 16px;
}

.tal-evidence-preview-form .tal-ops-permission {
    padding: 18px;
}

.tal-ops-form.is-disabled {
    padding: 17px;
    border: 1px dashed #d6ddd7;
    border-radius: 13px;
    background: rgba(245, 247, 242, .7);
    opacity: .78;
}

.tal-evidence-form textarea {
    resize: vertical;
}

.tal-evidence-textarea {
    min-height: 112px;
    line-height: 1.55;
}

.tal-evidence-textarea--large {
    min-height: 156px;
}

.tal-evidence-agentic-stack {
    display: grid;
    min-width: 0;
    gap: 18px;
}

.tal-agentic-event-form,
.tal-use-case-form {
    padding: 18px;
    border: 1px solid #dce2dc;
    border-radius: 14px;
    background: #fff;
}

.tal-use-case-form {
    border-style: dashed;
    background: #f8faf5;
}

.tal-inline-section-heading {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 2px;
}

.tal-inline-section-heading > span {
    display: grid;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    place-items: center;
    border-radius: 50%;
    color: var(--tal-night);
    background: var(--tal-acid);
    font-size: .66rem;
    font-weight: 900;
}

.tal-inline-section-heading strong,
.tal-inline-section-heading small {
    display: block;
}

.tal-inline-section-heading strong {
    color: var(--tal-ink);
    font-size: .82rem;
}

.tal-inline-section-heading small {
    margin-top: 3px;
    color: #788389;
    font-size: .65rem;
    line-height: 1.4;
}

.tal-field-pair {
    display: grid;
    gap: 13px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tal-ops-form label em {
    color: #849096;
    font-size: .58rem;
    font-style: normal;
    font-weight: 500;
}

.tal-ops-permission a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    color: var(--tal-night);
    font-size: .68rem;
    font-weight: 800;
}

.tal-record-tag {
    display: inline-flex;
    align-items: center;
    width: max-content;
    padding: 5px 8px;
    border-radius: 999px;
    color: #435158;
    background: #e7ece8;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: .53rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.tal-record-tag--operational {
    color: #245044;
    background: #dcefe7;
}

.tal-record-tag--qualitative {
    color: #624723;
    background: #f4ead8;
}

.tal-record-tag--agentic {
    color: #40521b;
    background: #e7f5bd;
}

.tal-evidence-lower {
    align-items: start;
}

.tal-evidence-records {
    display: grid;
    gap: 11px;
}

.tal-evidence-records article {
    display: grid;
    align-items: center;
    gap: 15px;
    padding: 17px;
    border: 1px solid #dfe4df;
    border-radius: 15px;
    background: rgba(255, 255, 255, .85);
    grid-template-columns: 42px minmax(0, 1fr) auto;
}

.tal-evidence-records article.is-demo {
    border-style: dashed;
}

.tal-evidence-record__icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    color: var(--tal-night);
    background: #e7ece8;
}

.tal-evidence-record__icon--operational { background: #dcefe7; }
.tal-evidence-record__icon--qualitative { background: #f4ead8; }
.tal-evidence-record__icon--agentic { background: #e7f5bd; }

.tal-evidence-record__body > div:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.tal-evidence-record__body time {
    color: #7a858a;
    font-size: .58rem;
}

.tal-evidence-record__body h3 {
    margin: 8px 0 4px;
    color: var(--tal-ink);
    font-size: .85rem;
}

.tal-evidence-record__body p {
    margin: 0 0 7px;
    color: #617076;
    font-size: .68rem;
    line-height: 1.48;
}

.tal-evidence-record__body small {
    color: #879196;
    font-size: .57rem;
}

.tal-evidence-record__value {
    max-width: 130px;
    color: var(--tal-ink);
    font-size: .76rem;
    text-align: right;
}

.tal-metric-catalog {
    display: grid;
    gap: 7px;
}

.tal-metric-catalog details {
    border: 1px solid #dfe5df;
    border-radius: 11px;
    background: #fff;
}

.tal-metric-catalog summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px;
    list-style: none;
    cursor: pointer;
}

.tal-metric-catalog summary::-webkit-details-marker { display: none; }
.tal-metric-catalog summary span,
.tal-metric-catalog summary strong,
.tal-metric-catalog summary small { display: block; }
.tal-metric-catalog summary strong { color: var(--tal-ink); font-size: .68rem; }
.tal-metric-catalog summary small { margin-top: 3px; color: #7c888d; font-size: .55rem; }
.tal-metric-catalog summary i { color: #819087; font-size: .58rem; transition: transform .2s ease; }
.tal-metric-catalog details[open] summary i { transform: rotate(180deg); }
.tal-metric-catalog details p { margin: 0; padding: 0 12px 10px; color: #67757a; font-size: .63rem; line-height: 1.5; }
.tal-metric-catalog details code { display: block; margin: 0 12px 12px; color: #69756e; font-size: .52rem; }

@media (max-width: 1180px) {
    .tal-command-grid {
        grid-template-columns: 1fr;
    }

    .tal-next-step {
        min-height: 310px;
    }
}

@media (max-width: 1024px) {
    .tal-topbar__role {
        display: none;
    }

    .tal-dashboard-overview {
        align-items: start;
        grid-template-columns: 1fr;
    }

    .tal-dashboard-overview__actions {
        width: 100%;
        min-width: 0;
        align-items: center;
        flex-direction: row;
    }

    .tal-evidence-form-panel {
        grid-template-columns: 1fr;
    }

    .tal-evidence-form-copy {
        position: static;
    }
}

@media (max-width: 760px) {
    .tal-topbar {
        min-height: 66px;
        gap: 10px;
        padding: 8px 14px;
    }

    .tal-topbar__actions {
        gap: 5px;
    }

    .tal-topbar__page > span,
    .tal-logout-button span {
        display: none;
    }

    .tal-logout-button {
        width: 38px;
        padding: 0;
        justify-content: center;
    }

    .tal-language-picker--portal {
        min-width: 142px;
        padding-inline: 9px;
    }

    .tal-language-picker--portal select {
        width: 103px;
        font-size: .66rem;
    }

    .tal-language-picker--portal > i:first-child {
        display: none;
    }

    .tal-score-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tal-score-grid article:nth-child(3) {
        border-top: 1px solid var(--tal-line);
        border-left: 0;
    }

    .tal-score-grid article:nth-child(4) {
        border-top: 1px solid var(--tal-line);
    }

    .tal-panel-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .tal-admin-page[data-tal-action="MembershipView"] .addNewInputs {
        grid-template-columns: 1fr;
    }

    .tal-admin-page[data-tal-action="MembershipView"] .addNewInputs .inputButton,
    .tal-admin-page[data-tal-action="MembershipView"] .addNewInputs > button {
        grid-column: 1;
    }

    .tal-evidence-tabs {
        grid-template-columns: 1fr;
    }

    .tal-evidence-tabs button {
        min-height: 58px;
    }

    .tal-field-pair {
        grid-template-columns: 1fr;
    }

    .tal-evidence-records article {
        align-items: start;
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .tal-evidence-record__value {
        max-width: none;
        grid-column: 2;
        text-align: left;
    }
}

@media (max-width: 560px) {
    .tal-topbar__page {
        display: none;
    }

    .tal-topbar__left {
        flex: 0 0 auto;
    }

    .tal-topbar__actions {
        min-width: 0;
        margin-left: auto;
    }

    .tal-profile-button {
        display: none;
    }

    .tal-language-picker--portal {
        min-width: 132px;
    }

    .tal-language-picker--portal select {
        width: 94px;
    }

    .tal-language-picker--nav {
        min-width: 134px;
        margin-left: auto;
    }

    .tal-language-picker--nav select {
        width: 96px;
        font-size: .65rem;
    }

    .tal-public-nav {
        gap: 8px;
        padding: 0 12px;
    }

    .tal-public-nav .tal-brand__mark {
        width: 38px;
        height: 38px;
    }

    .tal-dashboard-overview {
        padding: 22px 19px;
    }

    .tal-dashboard-overview__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .tal-score-grid {
        grid-template-columns: 1fr;
    }

    .tal-score-grid article + article,
    .tal-score-grid article:nth-child(3),
    .tal-score-grid article:nth-child(4) {
        border-top: 1px solid var(--tal-line);
        border-left: 0;
    }

    .tal-mini-flow small {
        display: none;
    }
}

/* Production setup and aggregate result workspace */
.tal-setup-status {
    display: grid;
    grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
    gap: 28px;
    margin: 0 0 24px;
    padding: 24px;
    border: 1px solid rgba(205, 222, 99, .25);
    border-radius: 20px;
    color: #fff;
    background: var(--tal-night);
}

.tal-setup-status h2 { margin: 5px 0 8px; font-size: 1.35rem; }
.tal-setup-status > div > p:last-child { margin: 0; color: #acb8bd; font-size: .76rem; line-height: 1.6; }
.tal-setup-status ol { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.tal-setup-status li,
.tal-result-readiness li {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 11px;
    padding: 12px 13px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 12px;
    background: rgba(255,255,255,.045);
}
.tal-setup-status li b,
.tal-result-readiness li b { font: 800 .65rem/1 ui-monospace, monospace; }
.tal-setup-status li strong,
.tal-setup-status li small,
.tal-result-readiness li strong,
.tal-result-readiness li small { display: block; }
.tal-setup-status li strong { font-size: .75rem; }
.tal-setup-status li small { margin-top: 3px; color: #9eacb2; font-size: .63rem; line-height: 1.4; }
.tal-setup-status li i { color: #829096; font-size: .68rem; }
.tal-setup-status li.is-current { border-color: rgba(205, 255, 80, .42); background: rgba(205, 255, 80, .075); }
.tal-setup-status li.is-complete b,
.tal-setup-status li.is-complete i { color: var(--tal-acid); }

.tal-evidence-blocker {
    display: grid;
    min-height: 280px;
    place-content: center;
    padding: 28px;
    border: 1px dashed #cdd7cf;
    border-radius: 15px;
    background: #f4f6f1;
}
.tal-evidence-blocker .tal-ops-secondary { width: max-content; margin: 16px auto 0; }

.tal-results-filter { max-width: 680px; }
.tal-results-empty { padding-block: 70px; }
.tal-result-next-steps { margin: -5px 0 24px; padding: 22px; border: 1px solid #d7ded7; border-radius: 18px; background: #f8faf6; }
.tal-result-next-steps__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.tal-result-next-steps__heading h2 { margin: 5px 0 0; font-size: 1.2rem; }
.tal-result-next-steps__heading > span { padding: 7px 9px; border-radius: 999px; color: #38594b; background: #e4efe6; font-size: .61rem; font-weight: 850; }
.tal-result-next-steps > div:last-child { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.tal-result-next-steps article { display: flex; align-items: flex-start; gap: 10px; padding: 14px; border: 1px solid #e0e5df; border-radius: 12px; background: #fff; }
.tal-result-next-steps article > b { color: #63826b; font: 850 .61rem/1.5 ui-monospace, monospace; }
.tal-result-next-steps article strong { display: block; font-size: .71rem; }
.tal-result-next-steps article p { margin: 5px 0 0; color: #69776f; font-size: .64rem; line-height: 1.5; }
.tal-result-summary,
.tal-result-readiness,
.tal-identified-results,
.tal-result-scoreboard,
.tal-result-table-section {
    margin-bottom: 24px;
    padding: 24px;
    border: 1px solid var(--tal-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 15px 38px rgba(16, 32, 42, .055);
}
.tal-result-summary__heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 20px; }
.tal-result-summary__heading h2 { margin: 4px 0 0; font-size: 1.55rem; letter-spacing: -.03em; }
.tal-result-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid #e4e8e3; border-radius: 16px; overflow: hidden; }
.tal-result-kpis article { min-width: 0; padding: 18px; background: #f8f9f5; }
.tal-result-kpis article + article { border-left: 1px solid #e1e5df; }
.tal-result-kpis span,
.tal-result-kpis strong,
.tal-result-kpis small { display: block; }
.tal-result-kpis span { color: #6e7a80; font-size: .64rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.tal-result-kpis strong { margin: 8px 0 4px; font-size: 2rem; line-height: 1; letter-spacing: -.045em; }
.tal-result-kpis small { color: #7d898d; font-size: .62rem; line-height: 1.4; }

.tal-result-readiness { display: grid; grid-template-columns: minmax(230px, .7fr) minmax(0, 1.3fr); gap: 24px 30px; }
.tal-result-readiness__copy h2 { margin: 5px 0 9px; font-size: 1.4rem; }
.tal-result-readiness__copy > p:last-child { margin: 0; color: var(--tal-ink-soft); font-size: .76rem; line-height: 1.6; }
.tal-result-readiness__progress { grid-column: 1 / -1; height: 7px; overflow: hidden; border-radius: 999px; background: #e8ece6; }
.tal-result-readiness__progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #65a779, var(--tal-acid)); }
.tal-result-readiness ol { display: grid; grid-column: 2; gap: 9px; margin: 0; padding: 0; list-style: none; }
.tal-result-readiness li { border-color: #e1e6e0; color: var(--tal-ink); background: #fafbf8; }
.tal-result-readiness li strong { font-size: .76rem; }
.tal-result-readiness li small { margin-top: 3px; color: #748187; font-size: .65rem; }
.tal-result-readiness li i { color: #87928f; font-size: .68rem; }
.tal-result-readiness li.is-current { border-color: #bdd296; box-shadow: inset 4px 0 var(--tal-acid); }
.tal-result-readiness li.is-complete b,
.tal-result-readiness li.is-complete i { color: #34785a; }
.tal-result-readiness__actions { display: flex; grid-column: 1 / -1; justify-content: flex-end; gap: 9px; border-top: 1px solid #e8ebe6; padding-top: 18px; }

.tal-identified-results { border-color: #d5c88c; background: #fffcf0; }
.tal-identified-result-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.tal-identified-result-grid article { overflow: hidden; border: 1px solid #e0d6a4; border-radius: 14px; background: #fff; }
.tal-identified-result-grid header { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid #eee6c4; color: var(--tal-ink); background: #fff9df; }
.tal-identified-result-grid header i { color: #8c721c; }
.tal-identified-result-grid header strong { font-size: .78rem; }
.tal-identified-result-grid ul { margin: 0; padding: 8px 16px; list-style: none; }
.tal-identified-result-grid li { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 9px 0; border-bottom: 1px solid #eef0eb; }
.tal-identified-result-grid li:last-child { border-bottom: 0; }
.tal-identified-result-grid li span { color: #637177; font-size: .68rem; }
.tal-identified-result-grid li b { color: var(--tal-ink); font-size: .75rem; }

.tal-result-score-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.tal-result-score-grid article { display: flex; min-height: 230px; padding: 19px; border: 1px solid #e1e6e0; border-radius: 15px; flex-direction: column; background: #fafbf8; }
.tal-result-score-grid article > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.tal-result-type { color: #637178; font-size: .62rem; font-weight: 850; text-transform: uppercase; letter-spacing: .05em; }
.tal-result-confidence { display: inline-flex; width: max-content; padding: 5px 7px; border-radius: 999px; color: #315d4b; background: #e2f1e8; font-size: .61rem; font-weight: 850; }
.tal-result-score-grid h3 { min-height: 42px; margin: 18px 0 8px; font-size: .92rem; line-height: 1.45; }
.tal-result-score-grid article > strong { margin: auto 0 11px; font-size: 2.45rem; line-height: 1; letter-spacing: -.055em; }
.tal-result-scale { height: 6px; overflow: hidden; border-radius: 999px; background: #e6ebe5; }
.tal-result-scale span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #759b7e, var(--tal-acid)); }
.tal-result-score-grid article > small { margin-top: 7px; color: #77848a; font-size: .62rem; }
.tal-result-score-grid footer { display: flex; justify-content: space-between; gap: 10px; margin-top: 15px; padding-top: 12px; border-top: 1px solid #e6e9e4; color: #6f7c81; font-size: .6rem; }

.tal-qualitative-insight { margin-bottom: 24px; padding: 24px; border: 1px solid #cfdccf; border-radius: 20px; background: linear-gradient(135deg, #f8fbf4 0%, #fff 65%); box-shadow: 0 15px 38px rgba(16,32,42,.05); }
.tal-qualitative-insight > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.tal-qualitative-insight > header h2 { margin: 5px 0 0; font-size: 1.35rem; }
.tal-qualitative-insight > header > span { display: inline-flex; align-items: center; gap: 7px; padding: 8px 10px; border-radius: 999px; color: #325b47; background: #e3f0e5; font-size: .61rem; font-weight: 850; white-space: nowrap; }
.tal-qualitative-insight > header > span.is-rules { color: #5c5f47; background: #eeefdf; }
.tal-qualitative-insight__assurance { display: flex; gap: 11px; margin: 17px 0; padding: 13px 15px; border: 1px solid #d9e4d8; border-radius: 12px; color: #496258; background: #eff6ee; }
.tal-qualitative-insight__assurance i { margin-top: 2px; }
.tal-qualitative-insight__assurance p { margin: 0; font-size: .65rem; line-height: 1.55; }
.tal-qualitative-insight__body { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.tal-qualitative-insight__body article { padding: 16px; border: 1px solid #e0e5de; border-radius: 13px; background: #fff; }
.tal-qualitative-insight__body .tal-qualitative-insight__summary { grid-column: 1 / -1; }
.tal-qualitative-insight__body span { display: block; color: #62716c; font-size: .59rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.tal-qualitative-insight__body p { margin: 8px 0 0; color: #42545b; font-size: .71rem; line-height: 1.6; }
.tal-qualitative-insight__body ul { display: flex; flex-wrap: wrap; gap: 7px; margin: 10px 0 0; padding: 0; list-style: none; }
.tal-qualitative-insight__body li { padding: 7px 9px; border-radius: 999px; color: #355746; background: #eaf3e9; font-size: .65rem; font-weight: 750; }
.tal-qualitative-insight__body .tal-qualitative-insight__prompt { border-color: #cbdc9c; background: #f5fbdc; }
.tal-qualitative-insight > footer { display: flex; justify-content: space-between; gap: 12px; margin-top: 14px; color: #778287; font-size: .6rem; }

.tal-result-table-wrap { overflow-x: auto; border: 1px solid #e2e6e1; border-radius: 14px; }
.tal-result-table-wrap table { width: 100%; border-collapse: collapse; }
.tal-result-table-wrap th,
.tal-result-table-wrap td { padding: 13px 14px; border-bottom: 1px solid #e8ebe7; text-align: left; white-space: nowrap; }
.tal-result-table-wrap th { color: #66737a; background: #f1f3ef; font-size: .61rem; text-transform: uppercase; letter-spacing: .05em; }
.tal-result-table-wrap td { font-size: .7rem; }
.tal-result-table-wrap td:first-child { min-width: 240px; white-space: normal; }
.tal-result-table-wrap td strong,
.tal-result-table-wrap td small { display: block; }
.tal-result-table-wrap td small { margin-top: 3px; color: #7b878c; font-size: .61rem; }
.tal-result-table-wrap tr:last-child td { border-bottom: 0; }

@media (max-width: 980px) {
    .tal-result-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-result-kpis article:nth-child(3) { border-top: 1px solid #e1e5df; border-left: 0; }
    .tal-result-kpis article:nth-child(4) { border-top: 1px solid #e1e5df; }
    .tal-result-score-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
    .tal-setup-status,
    .tal-result-readiness { grid-template-columns: 1fr; }
    .tal-result-next-steps__heading { flex-direction: column; }
    .tal-result-next-steps > div:last-child { grid-template-columns: 1fr; }
    .tal-result-readiness ol { grid-column: 1; }
    .tal-result-summary__heading { align-items: flex-start; flex-direction: column; }
    .tal-result-score-grid { grid-template-columns: 1fr; }
    .tal-qualitative-insight > header { flex-direction: column; }
    .tal-qualitative-insight > header > span { white-space: normal; }
    .tal-qualitative-insight__body { grid-template-columns: 1fr; }
    .tal-qualitative-insight__body .tal-qualitative-insight__summary { grid-column: 1; }
    .tal-identified-result-grid { grid-template-columns: 1fr; }
    .tal-result-readiness__actions { align-items: stretch; flex-direction: column; }
}

@media (max-width: 520px) {
    .tal-result-kpis { grid-template-columns: 1fr; }
    .tal-result-kpis article + article,
    .tal-result-kpis article:nth-child(3),
    .tal-result-kpis article:nth-child(4) { border-top: 1px solid #e1e5df; border-left: 0; }
}

/* Commercial access, trial and bank-transfer workflow */
.tal-public-cta__actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.tal-public-cta > div:first-child > p:last-child { max-width: 760px; margin: 10px 0 0; color: #aab6bb; font-size: .72rem; line-height: 1.6; }
.tal-access-page { max-width: 1540px; }
.tal-access-hero { margin-bottom: 22px; }
.tal-access-flow {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr) 18px);
    align-items: center;
    gap: 10px;
    margin: 0 0 24px;
    padding: 15px;
    border: 1px solid var(--tal-line);
    border-radius: 18px;
    background: #fff;
}
.tal-access-flow article { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 8px; }
.tal-access-flow article b { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 50%; color: var(--tal-night); background: var(--tal-acid); font: 850 .66rem/1 ui-monospace, monospace; }
.tal-access-flow article strong,
.tal-access-flow article span { display: block; }
.tal-access-flow article strong { font-size: .76rem; line-height: 1.35; }
.tal-access-flow article span { margin-top: 3px; color: #708087; font-size: .62rem; line-height: 1.4; }
.tal-access-flow > i { color: #a2aeaa; font-size: .64rem; }

.tal-entitlement-card { display: grid; grid-template-columns: minmax(210px, .75fr) minmax(0, 1.25fr) auto; align-items: center; gap: 26px; margin-bottom: 24px; padding: 23px; border: 1px solid #cadfc4; border-radius: 20px; background: #f6faef; box-shadow: 0 13px 34px rgba(16,32,42,.045); }
.tal-entitlement-card.is-expired { border-color: #ead6ce; background: #fcf6f2; }
.tal-entitlement-card h2 { margin: 4px 0 6px; font-size: 1.25rem; }
.tal-entitlement-card p { margin: 0; color: var(--tal-ink-soft); font-size: .7rem; }
.tal-entitlement-card dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; }
.tal-entitlement-card dl div { padding: 7px 13px; border-left: 1px solid #dae4d5; }
.tal-entitlement-card dt { color: #6b787e; font-size: .58rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.tal-entitlement-card dd { margin: 6px 0 0; font-size: .75rem; font-weight: 800; }

.tal-research-program { margin: 0 0 24px; padding: 26px; border: 1px solid #d7dfd3; border-radius: 22px; background: #fff; box-shadow: 0 16px 40px rgba(16,32,42,.05); }
.tal-research-program__header { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr); gap: 28px; align-items: center; }
.tal-research-program__header h2 { margin: 5px 0 10px; font-size: clamp(1.45rem, 2vw, 2rem); letter-spacing: -.04em; }
.tal-research-program__header > div:first-child > p:last-child { max-width: 900px; margin: 0; color: var(--tal-ink-soft); font-size: .72rem; line-height: 1.65; }
.tal-research-capacity { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border: 1px solid #dce4d9; border-radius: 15px; background: #f7faf3; }
.tal-research-capacity span { display: grid; gap: 3px; padding: 15px; color: #627069; font-size: .61rem; }
.tal-research-capacity span + span { border-left: 1px solid #dce4d9; }
.tal-research-capacity strong { color: var(--tal-night); font-size: 1.15rem; }
.tal-research-capacity small { grid-column: 1 / -1; padding: 10px 15px; border-top: 1px solid #dce4d9; color: #4f6759; font-size: .61rem; font-weight: 800; }
.tal-research-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 22px 0; }
.tal-research-principles article { display: flex; gap: 11px; padding: 15px; border: 1px solid #e2e7e0; border-radius: 14px; background: #fafbf8; }
.tal-research-principles i { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border-radius: 10px; color: #37634f; background: #e5f0e4; }
.tal-research-principles strong,
.tal-research-principles span { display: block; }
.tal-research-principles strong { font-size: .72rem; }
.tal-research-principles span { margin-top: 5px; color: #6d797a; font-size: .62rem; line-height: 1.5; }
.tal-research-status { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr); gap: 20px; align-items: center; margin: 18px 0; padding: 20px; border: 1px solid #cddfc7; border-radius: 16px; background: #f5faef; }
.tal-research-status--waitlisted { border-color: #ded7bb; background: #fbf8eb; }
.tal-research-status--not_eligible,
.tal-research-status--expired { border-color: #ead5cb; background: #fcf6f2; }
.tal-research-status h3 { margin: 5px 0 7px; font-size: 1.1rem; }
.tal-research-status p:last-child { margin: 0; color: #5f6e71; font-size: .68rem; line-height: 1.6; }
.tal-research-activation { display: grid; gap: 9px; }
.tal-research-activation form:first-child { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px; align-items: end; }
.tal-research-activation label { margin: 0; }
.tal-research-activation label span { display: block; margin-bottom: 6px; color: #66746e; font-size: .58rem; font-weight: 850; text-transform: uppercase; }
.tal-research-activation input { width: 100%; min-height: 43px; padding: 9px 11px; border: 1px solid #ccd6ce; border-radius: 10px; font: 750 .75rem/1.2 ui-monospace, monospace; }
.tal-research-activation form:last-child { text-align: right; }
.tal-research-closed { display: flex; gap: 14px; align-items: flex-start; padding: 18px; border: 1px solid #dde2db; border-radius: 15px; background: #f6f7f4; }
.tal-research-closed > i { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; border-radius: 10px; color: #66736e; background: #e8ece7; }
.tal-research-closed strong { font-size: .8rem; }
.tal-research-closed p { margin: 5px 0 0; color: #6d797c; font-size: .66rem; line-height: 1.55; }
.tal-research-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; margin-top: 20px; padding-top: 22px; border-top: 1px solid #e4e8e3; }
.tal-research-form__heading { grid-column: 1 / -1; }
.tal-research-form__heading h3 { margin: 4px 0 0; font-size: 1.25rem; }
.tal-research-form__heading > div > p:last-child { max-width: 760px; margin: 9px 0 0; color: #5f6f73; font-size: .72rem; line-height: 1.65; }
.tal-research-form textarea { min-height: 105px; resize: vertical; }
.tal-research-consents { display: grid; gap: 0; margin: 5px 0 0; padding: 17px 19px 12px; border: 1px solid #dce3d9; border-radius: 14px; background: #f8faf6; }
.tal-research-consents legend { padding: 0 6px; font-size: .7rem; font-weight: 850; }
.tal-research-consents__intro { margin: 0 0 6px; color: #69777b; font-size: .68rem; line-height: 1.55; }
.tal-research-consents label { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 11px; align-items: start; margin: 0; padding: 10px 3px; border-top: 1px solid #e7ebe5; color: #42545a; }
.tal-research-consents label > span { display: block; margin: 0; color: inherit; font-size: .72rem; font-weight: 650; letter-spacing: 0; line-height: 1.55; text-transform: none; }
.tal-research-consents label.tal-research-consents__optional { margin-top: 7px; padding: 14px 12px; border: 1px solid #ccd9c8; border-radius: 11px; background: #fff; }
.tal-research-consents__optional strong { display: block; margin-bottom: 4px; color: #173c31; font-size: .76rem; }
.tal-research-consents__optional span > span { display: block; color: #42545a; font-size: .7rem; font-weight: 600; line-height: 1.6; }
.tal-research-consents__optional small { display: block; margin-top: 7px; color: #6a777b; font-size: .64rem; font-weight: 500; line-height: 1.55; }
.tal-research-consents label.tal-research-consents__programme-term { margin-top: 7px; padding: 15px 13px; border: 1px solid #a9c79f; border-radius: 11px; color: #264d38; background: #eef7e9; }
.tal-research-consents__programme-term strong { display: block; margin-bottom: 5px; color: #173c31; font-size: .78rem; }
.tal-research-consents__programme-term span > span { display: block; color: #344f43; font-size: .7rem; font-weight: 650; line-height: 1.62; }
.tal-research-consents__programme-term small { display: block; margin-top: 8px; color: #566a60; font-size: .64rem; font-weight: 520; line-height: 1.58; }
.tal-research-consents__alternative { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; margin: 10px 2px 2px; padding: 11px 12px; border-radius: 10px; color: #4f5f65; background: #edf0ed; font-size: .66rem; line-height: 1.55; }
.tal-research-consents__alternative i { color: #4b715d; }
.tal-research-consents__alternative a { color: #173c31; font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
.tal-ops-form .tal-research-consents input[type="checkbox"] {
    width: 17px;
    min-width: 17px;
    height: 17px;
    min-height: 0;
    margin: 2px 0 0;
    padding: 0;
    align-self: start;
    accent-color: #527452;
}
.tal-programme-claim-page { max-width: 1280px; }
.tal-programme-claim-confirm { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 25px; align-items: center; margin-top: 20px; padding: 25px; }
.tal-programme-claim-confirm h2 { margin: 5px 0 8px; font-size: 1.3rem; }
.tal-programme-claim-confirm p:last-child { max-width: 800px; margin: 0; color: var(--tal-ink-soft); font-size: .72rem; line-height: 1.65; }

.tal-access-grid { display: grid; grid-template-columns: minmax(330px, .72fr) minmax(0, 1.28fr); gap: 24px; align-items: start; }
.tal-access-trial,
.tal-access-bank,
.tal-access-history,
.tal-payment-review { padding: 25px; border: 1px solid var(--tal-line); border-radius: 22px; background: #fff; box-shadow: 0 16px 40px rgba(16,32,42,.055); }
.tal-access-trial { position: sticky; top: 92px; }
.tal-access-bank { min-width: 0; }
.tal-access-section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 13px; }
.tal-access-section-heading h2 { margin: 4px 0 0; font-size: 1.45rem; letter-spacing: -.035em; }
.tal-access-section-heading > span { flex: 0 0 auto; padding: 7px 9px; border-radius: 999px; color: #365d4b; background: #e5f1e7; font-size: .61rem; font-weight: 850; text-transform: uppercase; letter-spacing: .04em; }
.tal-access-trial > p,
.tal-access-bank > p,
.tal-payment-review__lead { color: var(--tal-ink-soft); font-size: .72rem; line-height: 1.65; }
.tal-access-checklist { display: grid; gap: 9px; margin: 19px 0 22px; padding: 0; list-style: none; }
.tal-access-checklist li { display: flex; align-items: center; gap: 9px; color: #34464f; font-size: .7rem; }
.tal-access-checklist i { display: grid; width: 21px; height: 21px; flex: 0 0 21px; place-items: center; border-radius: 50%; color: #2f7555; background: #e2f2e7; font-size: .58rem; }
.tal-access-checklist .fa-minus { color: #7b6c55; background: #f3ebdc; }
.tal-access-trial-form { padding-top: 20px; border-top: 1px solid #e6eae5; }
.tal-email-verification { margin: 20px 0; padding: 16px; border: 1px solid #dce3d9; border-radius: 15px; background: #f7f9f5; }
.tal-email-verification__heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
.tal-email-verification__heading > div { display: grid; gap: 3px; }
.tal-email-verification__heading span { color: #728079; font-size: .58rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.tal-email-verification__heading strong { font-size: .88rem; }
.tal-email-verification__heading em { display: inline-flex; align-items: center; gap: 6px; padding: 6px 8px; border-radius: 999px; color: #8a4f3e; background: #f8e7df; font-size: .58rem; font-style: normal; font-weight: 850; white-space: nowrap; }
.tal-email-verification__heading em.is-verified { color: #2f6c51; background: #e2f1e5; }
.tal-email-verification > p { margin: 0 0 13px; color: var(--tal-ink-soft); font-size: .67rem; line-height: 1.55; }
.tal-email-verification__change { margin-top: 11px; }
.tal-email-verification__change summary { width: max-content; color: #456659; font-size: .64rem; font-weight: 800; cursor: pointer; }
.tal-email-verification__change[open] summary { margin-bottom: 11px; }
.tal-signup-verification-note { margin: 0 0 20px; color: #52616a; font-size: .94rem; line-height: 1.65; }
.tal-signup-verification-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 18px; margin-top: 18px; }
.tal-signup-text-button { appearance: none; border: 0; background: transparent; color: #183c47; cursor: pointer; font: inherit; font-weight: 700; padding: 5px 0; text-decoration: underline; text-underline-offset: 4px; }
.tal-signup-text-button:hover,
.tal-signup-text-button:focus-visible { color: #5d7a16; }
.tal-email-verification__request,
.tal-email-verification__confirm { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px; align-items: end; }
.tal-email-verification__confirm { margin-top: 11px; padding-top: 11px; border-top: 1px solid #e0e5df; }
.tal-email-verification label { margin: 0; }
.tal-email-verification label span,
.tal-access-verified-email span { display: block; margin-bottom: 6px; color: #65726d; font-size: .58rem; font-weight: 850; letter-spacing: .045em; text-transform: uppercase; }
.tal-email-verification input { width: 100%; min-height: 42px; padding: 9px 11px; border: 1px solid #ccd5ce; border-radius: 10px; color: var(--tal-ink); background: #fff; font: 650 .76rem/1.3 inherit; outline: none; }
.tal-email-verification input:focus { border-color: #75937e; box-shadow: 0 0 0 3px rgba(94, 135, 106, .13); }
.tal-email-verification button { min-height: 42px; white-space: nowrap; }
.tal-access-verified-email { padding: 11px 12px; border: 1px solid #d6ddd7; border-radius: 10px; background: #f3f6f1; }
.tal-access-verified-email strong { display: block; color: #2f6c51; font-size: .76rem; overflow-wrap: anywhere; }

.tal-bank-beneficiary { padding: 17px; border-radius: 14px; color: #fff; background: var(--tal-night); }
.tal-bank-beneficiary span,
.tal-bank-beneficiary strong,
.tal-bank-beneficiary small { display: block; }
.tal-bank-beneficiary span { color: var(--tal-acid); font-size: .59rem; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.tal-bank-beneficiary strong { margin: 9px 0 6px; font-size: .79rem; line-height: 1.5; }
.tal-bank-beneficiary small { color: #a7b5ba; font-size: .64rem; }
.tal-bank-accounts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 12px 0; }
.tal-bank-accounts article { min-width: 0; padding: 15px; border: 1px solid #dfe5df; border-radius: 13px; background: #f8f9f6; }
.tal-bank-accounts span,
.tal-bank-accounts strong,
.tal-bank-accounts small { display: block; }
.tal-bank-accounts span { color: #66767c; font-size: .59rem; font-weight: 800; text-transform: uppercase; }
.tal-bank-accounts strong { margin: 9px 0; overflow-wrap: anywhere; font: 800 .72rem/1.55 ui-monospace, monospace; }
.tal-bank-accounts small { color: #7c898d; font-size: .59rem; }
.tal-international-details { display: grid; grid-template-columns: .7fr .9fr 1.4fr; gap: 1px; overflow: hidden; margin: 12px 0; border: 1px solid #dfe5df; border-radius: 13px; background: #dfe5df; }
.tal-international-details div { padding: 13px; background: #fff; }
.tal-international-details span,
.tal-international-details strong { display: block; }
.tal-international-details span { color: #728087; font-size: .57rem; font-weight: 800; text-transform: uppercase; }
.tal-international-details strong { margin-top: 7px; font-size: .67rem; line-height: 1.45; }
.tal-payment-description { margin: 14px 0; padding: 16px; border: 1px solid rgba(194, 226, 92, .7); border-radius: 14px; background: #f5fbdc; }
.tal-payment-description span,
.tal-payment-description strong,
.tal-payment-description small { display: block; }
.tal-payment-description span { color: #5f6c54; font-size: .58rem; font-weight: 850; text-transform: uppercase; letter-spacing: .05em; }
.tal-payment-description strong { margin: 9px 0; overflow-wrap: anywhere; font: 850 .78rem/1.5 ui-monospace, monospace; }
.tal-payment-description small { color: #687260; font-size: .61rem; line-height: 1.5; }
.tal-access-notice { display: flex; gap: 11px; margin-top: 16px; padding: 13px; border-radius: 12px; color: #4f5f65; background: #edf1ed; }
.tal-access-notice i { margin-top: 2px; color: #4f7b64; }
.tal-access-notice p { margin: 0; font-size: .66rem; line-height: 1.6; }
.tal-access-notice a { color: #245b48; font-weight: 800; }
.tal-access-notice--international { margin-bottom: 22px; }
.tal-bank-notification-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; padding-top: 22px; border-top: 1px solid #e4e8e3; }
.tal-bank-notification-form label { margin: 0; }
.tal-bank-notification-form textarea { min-height: 84px; resize: vertical; }
.tal-form-wide { grid-column: 1 / -1; }
.tal-form-section-title { display: flex; grid-column: 1 / -1; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 4px; }
.tal-form-section-title span { font-size: .88rem; font-weight: 850; }
.tal-form-section-title small { max-width: 430px; color: #77848a; font-size: .61rem; line-height: 1.5; text-align: right; }

.tal-access-history,
.tal-payment-review { margin-top: 24px; }
.tal-access-request-list { display: grid; gap: 9px; }
.tal-access-request-list article { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 15px; border: 1px solid #e1e6e0; border-radius: 12px; background: #fafbf8; }
.tal-access-request-list article.is-focused,
.tal-payment-review-list article.is-focused { border-color: #b7d16f; box-shadow: inset 4px 0 var(--tal-acid); }
.tal-access-request-list strong,
.tal-access-request-list span { display: block; }
.tal-access-request-list div > strong { font: 800 .7rem/1.4 ui-monospace, monospace; }
.tal-access-request-list div > span { margin-top: 4px; color: #748187; font-size: .64rem; }
.tal-request-state { padding: 6px 8px; border-radius: 999px; color: #7b5f32; background: #fff0cd; font-size: .58rem; font-weight: 850; text-transform: uppercase; }
.tal-request-state--approved { color: #2e6b50; background: #dff1e6; }
.tal-request-state--rejected { color: #8a493d; background: #f8e1dc; }

.tal-payment-review-list { display: grid; gap: 15px; }
.tal-payment-review-list > article { padding: 20px; border: 1px solid #e0e5df; border-radius: 16px; background: #fafbf8; }
.tal-payment-review-list header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.tal-payment-review-list header small { font: 800 .62rem/1.4 ui-monospace, monospace; color: #5c6d73; }
.tal-payment-review-list h3 { margin: 5px 0; font-size: 1.05rem; }
.tal-payment-review-list header p { margin: 0; color: #728087; font-size: .64rem; }
.tal-payment-review-list header > strong { font-size: 1.05rem; }
.tal-payment-review-list dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; overflow: hidden; margin: 17px 0; border: 1px solid #e1e5e0; border-radius: 11px; background: #e1e5e0; }
.tal-payment-review-list dl div { padding: 11px; background: #fff; }
.tal-payment-review-list dt { color: #748187; font-size: .56rem; font-weight: 800; text-transform: uppercase; }
.tal-payment-review-list dd { margin: 6px 0 0; font-size: .65rem; font-weight: 750; }
.tal-payment-review-list details { margin-bottom: 15px; color: #5f6f75; font-size: .65rem; }
.tal-payment-review-list details p { white-space: pre-line; }
.tal-payment-review-actions { display: grid; grid-template-columns: 1.25fr .75fr; gap: 12px; }
.tal-payment-review-actions form { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: end; gap: 9px; padding: 13px; border: 1px solid #e0e5df; border-radius: 12px; background: #fff; }
.tal-payment-review-actions form + form { grid-template-columns: 1fr; }
.tal-payment-review-actions label { display: grid; gap: 5px; margin: 0; }
.tal-payment-review-actions label span { color: #617177; font-size: .57rem; font-weight: 800; text-transform: uppercase; }
.tal-payment-review-actions input { min-width: 0; height: 39px; padding: 0 10px; border: 1px solid #d5ddd6; border-radius: 9px; font: inherit; }
.tal-payment-review-actions button { min-height: 39px; }
.tal-license-pricing { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0; }
.tal-license-pricing article { padding: 16px; border: 1px solid #dce3d8; border-radius: 14px; background: #f8faf5; }
.tal-license-pricing span,
.tal-license-pricing strong,
.tal-license-pricing small { display: block; }
.tal-license-pricing span { color: #67776d; font-size: .59rem; font-weight: 850; text-transform: uppercase; letter-spacing: .05em; }
.tal-license-pricing strong { margin: 7px 0; font-size: .9rem; }
.tal-license-pricing small { color: #6d7b78; font-size: .62rem; line-height: 1.55; }
.tal-consulting-packages { margin: 18px 0 22px; padding: 18px; border: 1px solid #dfe4df; border-radius: 16px; background: #fff; }
.tal-consulting-packages > div { display: grid; gap: 9px; margin-top: 10px; }
.tal-consulting-packages article { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 16px; padding: 11px 0; border-top: 1px solid #edf0ed; }
.tal-consulting-packages article:first-child { border-top: 0; }
.tal-consulting-packages article strong { font-size: .7rem; }
.tal-consulting-packages article span { color: #53666c; font-size: .67rem; font-weight: 800; }
.tal-consulting-packages article small { grid-column: 1 / -1; color: #738087; font-size: .58rem; }
.tal-review-static { display: grid; gap: 5px; align-content: end; min-height: 39px; padding: 7px 10px; border: 1px solid #d5ddd6; border-radius: 9px; background: #f8faf7; }
.tal-review-static span { color: #617177; font-size: .57rem; font-weight: 800; text-transform: uppercase; }
.tal-review-static strong { font-size: .7rem; }

@media (max-width: 1180px) {
    .tal-access-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-access-flow > i { display: none; }
    .tal-access-grid { grid-template-columns: 1fr; }
    .tal-access-trial { position: static; }
    .tal-payment-review-actions { grid-template-columns: 1fr; }
    .tal-research-program__header { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
    .tal-entitlement-card { grid-template-columns: 1fr; }
    .tal-entitlement-card dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-bank-accounts,
    .tal-international-details,
    .tal-license-pricing { grid-template-columns: 1fr; }
    .tal-bank-notification-form { grid-template-columns: 1fr; }
    .tal-form-wide { grid-column: 1; }
    .tal-form-section-title { grid-column: 1; align-items: flex-start; flex-direction: column; }
    .tal-form-section-title small { text-align: left; }
    .tal-payment-review-list dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-payment-review-actions form { grid-template-columns: 1fr; }
    .tal-email-verification__request,
    .tal-email-verification__confirm { grid-template-columns: 1fr; }
    .tal-email-verification button { width: 100%; }
    .tal-consulting-packages article { grid-template-columns: 1fr; }
    .tal-research-principles,
    .tal-research-status,
    .tal-research-form { grid-template-columns: 1fr; }
    .tal-research-form__heading,
    .tal-research-form .tal-form-wide { grid-column: 1; }
    .tal-research-activation form:first-child { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
    .tal-access-flow { grid-template-columns: 1fr; }
    .tal-entitlement-card dl,
    .tal-payment-review-list dl { grid-template-columns: 1fr; }
    .tal-access-trial,
    .tal-access-bank,
    .tal-access-history,
    .tal-payment-review { padding: 18px; }
    .tal-research-program { padding: 18px; }
    .tal-research-capacity { grid-template-columns: 1fr; }
    .tal-research-capacity span + span { border-top: 1px solid #dce4d9; border-left: 0; }
    .tal-access-request-list article,
    .tal-payment-review-list header { align-items: flex-start; flex-direction: column; }
}

/* These rules intentionally follow the public programme and score-band base
   definitions so the responsive layouts win in the cascade. */
@media (max-width: 1050px) {
    .tal-public-programme__intro { grid-template-columns: 1fr; }
    .tal-public-programme__flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tal-public-programme__flow li:nth-child(3) { border-top: 1px solid var(--tal-line); border-left: 0; }
    .tal-public-programme__flow li:nth-child(4) { border-top: 1px solid var(--tal-line); }
}

@media (max-width: 720px) {
    .tal-public-programme__actions { align-items: stretch; flex-direction: column; }
    .tal-public-programme__actions a { width: 100%; }
    .tal-public-programme__flow { grid-template-columns: 1fr; }
    .tal-public-programme__flow li { min-height: 0; }
    .tal-public-programme__flow li + li,
    .tal-public-programme__flow li:nth-child(3),
    .tal-public-programme__flow li:nth-child(4) { border-top: 1px solid var(--tal-line); border-left: 0; }
    .tal-public-programme__flow strong { margin-top: 24px; }
    .tal-score-bands { grid-template-columns: 1fr; }
    .tal-score-bands > span + span { border-top: 1px solid var(--tal-line); border-left: 0; }
}
