:root {
    color-scheme: dark;
    --void: #030713;
    --deep: #071328;
    --panel: rgba(8, 23, 50, 0.84);
    --panel-strong: rgba(13, 38, 77, 0.9);
    --line: rgba(154, 211, 255, 0.18);
    --line-strong: rgba(171, 222, 255, 0.5);
    --blue: #9cd7ff;
    --blue-bright: #5ab8ff;
    --gold: #f5bd59;
    --green: #70e4ad;
    --white: #f7fbff;
    --muted: #aec4df;
    --dim: #7390b2;
    --display: "Montserrat", system-ui, sans-serif;
    --sans: "Space Grotesk", system-ui, sans-serif;
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--void); }
body {
    min-width: 320px;
    min-height: 100vh;
    margin: 0;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 5% 12%, rgba(54, 135, 226, 0.19), transparent 25rem),
        radial-gradient(circle at 96% 76%, rgba(37, 112, 205, 0.17), transparent 32rem),
        linear-gradient(145deg, #07152d 0%, var(--void) 44%, #06132c 100%);
    color: var(--white);
    font-family: var(--sans);
}

body::before {
    position: fixed;
    inset: 0;
    z-index: -1;
    opacity: 0.42;
    pointer-events: none;
    background-image:
        radial-gradient(circle at 14% 18%, rgba(255,255,255,0.9) 0 0.7px, transparent 0.9px),
        radial-gradient(circle at 74% 8%, rgba(160,215,255,0.8) 0 0.6px, transparent 0.9px),
        radial-gradient(circle at 92% 63%, rgba(255,255,255,0.62) 0 0.65px, transparent 0.9px);
    background-size: 231px 273px, 337px 307px, 301px 369px;
    content: "";
}

a { color: inherit; text-decoration: none; }
button { font: inherit; }
button:focus-visible, a:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }

.skip-link {
    position: fixed;
    z-index: 30;
    top: 0.85rem;
    left: 0.85rem;
    transform: translateY(-200%);
    padding: 0.68rem 0.9rem;
    border-radius: 0.45rem;
    background: var(--gold);
    color: #151005;
    font-weight: 800;
}
.skip-link:focus { transform: translateY(0); }
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.platform-header {
    width: min(100% - 3rem, 92rem);
    min-height: 5.35rem;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.platform-brand, .platform-header__tools, .platform-brand__lockup, .auth-control, .signed-in-control {
    display: flex;
    align-items: center;
}
.platform-brand { min-width: 0; gap: 0.72rem; }
.platform-brand__mark {
    position: relative;
    width: 2.35rem;
    height: 2.35rem;
    flex: 0 0 auto;
    overflow: hidden;
    border: 1px solid var(--line-strong);
    border-radius: 50%;
    background: radial-gradient(circle at 39% 31%, #bce4ff 0 7%, #3d8ac8 8% 16%, #0b2c56 17% 59%, #061228 60%);
    box-shadow: inset 0 0 16px rgba(126,205,255,0.42), 0 0 22px rgba(71,168,246,0.18);
}
.platform-brand__mark::before {
    position: absolute;
    top: 0.73rem;
    left: -0.34rem;
    width: 2.96rem;
    height: 0.78rem;
    border: 1px solid rgba(216,241,255,0.86);
    border-radius: 50%;
    content: "";
    transform: rotate(-29deg);
}
.platform-brand__mark i, .platform-brand__mark b {
    position: absolute;
    display: block;
    border-radius: 50%;
    background: #fff9e8;
    box-shadow: 0 0 7px #fff9e8;
}
.platform-brand__mark i { top: 0.42rem; right: 0.49rem; width: 0.14rem; height: 0.14rem; }
.platform-brand__mark b { bottom: 0.49rem; left: 0.46rem; width: 0.1rem; height: 0.1rem; }
.platform-brand__lockup { display: grid; gap: 0.08rem; line-height: 1; }
.platform-brand__lockup strong {
    color: #fff;
    font-family: var(--display);
    font-size: 0.84rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.platform-brand__lockup small, .sidebar-label, .workspace-kicker, .demo-banner p {
    color: var(--blue);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.platform-header__tools { gap: 0.62rem; }
.platform-text-link, .language-button {
    min-height: 2.35rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 0.44rem;
    background: rgba(11,31,62,0.46);
    color: var(--muted);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: transform 160ms ease, background 160ms ease, color 160ms ease, border-color 160ms ease;
}
.platform-text-link { padding: 0.68rem 0.85rem; }
.language-button { width: 2.35rem; padding: 0; cursor: pointer; }
.platform-text-link:hover, .language-button:hover { border-color: var(--line-strong); background: rgba(63,141,213,0.16); color: #fff; transform: translateY(-1px); }

.google-button, .sign-out-button {
    min-height: 2.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.52rem;
    border: 1px solid rgba(168,218,255,0.56);
    border-radius: 0.44rem;
    background: linear-gradient(135deg, rgba(52,142,224,0.91), rgba(30,89,179,0.93));
    color: #fff;
    font-size: 0.67rem;
    font-weight: 700;
    letter-spacing: 0.055em;
    cursor: pointer;
    transition: transform 160ms ease, box-shadow 160ms ease;
}
.google-button { padding: 0.62rem 0.78rem; }
.google-button:hover { transform: translateY(-1px); box-shadow: 0 8px 23px rgba(26,102,198,0.3); }
.google-button__mark {
    width: 1.05rem;
    height: 1.05rem;
    display: inline-grid;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #4285f4;
    font-family: Arial, sans-serif;
    font-size: 0.76rem;
    font-weight: 800;
}
.signed-in-control {
    gap: 0.42rem;
    padding: 0.25rem 0.28rem 0.25rem 0.32rem;
    border: 1px solid var(--line);
    border-radius: 0.55rem;
    background: rgba(8,27,57,0.65);
}
.avatar {
    width: 1.75rem;
    height: 1.75rem;
    display: inline-grid;
    place-items: center;
    border-radius: 50%;
    background: linear-gradient(145deg, #89caff, #3166ad);
    color: #061528;
    font-size: 0.69rem;
    font-weight: 800;
}
.signed-in-control__identity {
    max-width: 10.5rem;
    overflow: hidden;
    color: var(--muted);
    font-size: 0.69rem;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.sign-out-button {
    min-height: 1.78rem;
    padding: 0.35rem 0.5rem;
    border-color: transparent;
    background: transparent;
    color: var(--blue);
    font-size: 0.61rem;
}
.sign-out-button:hover { background: rgba(255,255,255,0.07); color: #fff; }

.demo-banner {
    width: min(100% - 3rem, 92rem);
    min-height: 3.2rem;
    margin: 0 auto;
    padding: 0.72rem 0.95rem;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(12rem, 22rem);
    gap: 0.7rem;
    align-items: center;
    border: 1px solid rgba(245,189,89,0.29);
    border-radius: 0.72rem;
    background: linear-gradient(90deg, rgba(245,189,89,0.12), rgba(18,43,77,0.66));
}
.demo-banner__signal {
    width: 0.58rem;
    height: 0.58rem;
    border-radius: 50%;
    background: var(--gold);
    box-shadow: 0 0 12px rgba(245,189,89,0.8);
}
.demo-banner p { margin: 0 0 0.18rem; color: var(--gold); }
.demo-banner span:not(.demo-banner__status) { color: #e5edf7; font-size: 0.74rem; line-height: 1.45; }
.demo-banner__privacy {
    width: max-content;
    max-width: 100%;
    margin-top: 0.35rem;
    display: block;
    color: var(--blue);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.045em;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.2rem;
}
.demo-banner__privacy:hover { color: #fff; }
.demo-banner__status {
    color: var(--blue);
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.35;
    text-align: right;
}

.platform-shell {
    width: min(100% - 3rem, 92rem);
    min-height: calc(100vh - 9.5rem);
    margin: 1rem auto 3rem;
    display: grid;
    grid-template-columns: 15rem minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 1rem;
    background: rgba(5,16,37,0.8);
    box-shadow: 0 30px 80px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.075);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.platform-sidebar {
    padding: 1.15rem 0.8rem;
    display: flex;
    flex-direction: column;
    gap: 1.45rem;
    border-right: 1px solid var(--line);
    background: rgba(3,12,28,0.48);
}
.sidebar-section { display: grid; gap: 0.52rem; }
.sidebar-label { margin: 0 0 0.05rem; padding: 0 0.42rem; color: var(--dim); }
.role-list, .module-list { display: grid; gap: 0.15rem; }
.role-button, .module-button {
    width: 100%;
    min-height: 2.55rem;
    display: flex;
    align-items: center;
    gap: 0.64rem;
    padding: 0.55rem 0.65rem;
    border: 1px solid transparent;
    border-radius: 0.48rem;
    background: transparent;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    transition: color 150ms ease, background 150ms ease, border-color 150ms ease;
}
.role-button:hover, .module-button:hover { background: rgba(100,177,238,0.08); color: #fff; }
.role-button.is-active, .module-button.is-active {
    border-color: rgba(151,214,255,0.23);
    background: linear-gradient(100deg, rgba(65,155,228,0.2), rgba(14,42,82,0.35));
    color: #fff;
}
.role-button__icon { width: 1rem; color: var(--blue); text-align: center; }
.module-button span:first-child { width: 1rem; color: var(--blue); text-align: center; font-weight: 800; }

.security-note {
    margin-top: auto;
    padding: 0.85rem;
    display: flex;
    gap: 0.62rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.64rem;
    background: rgba(28,77,130,0.15);
}
.security-note__icon { color: var(--gold); font-size: 1.15rem; }
.security-note strong { color: #eaf5ff; font-size: 0.69rem; line-height: 1.35; }
.security-note p { margin: 0.4rem 0 0; color: var(--dim); font-size: 0.64rem; line-height: 1.5; }

.platform-workspace {
    min-width: 0;
    padding: clamp(1.25rem, 3vw, 2.2rem);
}
.workspace-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    padding-bottom: 1.6rem;
    border-bottom: 1px solid var(--line);
}
.workspace-kicker { margin: 0; color: var(--blue); }
.workspace-header h1 {
    max-width: 47rem;
    margin: 0.58rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.75rem, 3vw, 2.85rem);
    font-weight: 800;
    letter-spacing: -0.05em;
    line-height: 1.06;
}
.workspace-header p:not(.workspace-kicker) {
    max-width: 48rem;
    margin: 0.85rem 0 0;
    color: var(--muted);
    font-size: 0.91rem;
    line-height: 1.62;
}
.workspace-header__meta {
    min-width: 9rem;
    display: grid;
    justify-items: end;
    gap: 0.7rem;
}
.workspace-state {
    display: inline-flex;
    align-items: center;
    min-height: 1.72rem;
    padding: 0.3rem 0.5rem;
    border: 1px solid rgba(112,228,173,0.36);
    border-radius: 999px;
    background: rgba(112,228,173,0.08);
    color: var(--green);
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    white-space: nowrap;
}
.workspace-action {
    min-height: 2.32rem;
    padding: 0.52rem 0.7rem;
    border: 1px solid var(--line);
    border-radius: 0.44rem;
    background: rgba(30,76,130,0.32);
    color: var(--blue);
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    cursor: pointer;
}
.workspace-action:hover { border-color: var(--line-strong); color: #fff; }

.workspace-content {
    display: grid;
    gap: 1.25rem;
    padding-top: 1.25rem;
}
.role-perspective {
    display: grid;
    gap: 0.38rem;
    margin: 0;
    padding: 1rem 1.1rem;
    border: 1px solid rgba(108, 174, 255, 0.25);
    border-left: 3px solid var(--blue-bright);
    border-radius: 0.85rem;
    background: linear-gradient(110deg, rgba(44, 122, 255, 0.12), rgba(10, 19, 47, 0.56));
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.04);
}
.role-perspective > span {
    color: var(--blue);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.13em;
}
.role-perspective p {
    margin: 0;
    color: var(--white);
    font-size: 0.9rem;
    line-height: 1.55;
}

.workspace-orientation {
    display: grid;
    gap: 1rem;
    padding: 1.1rem;
    border: 1px solid rgba(112, 228, 173, 0.25);
    border-radius: 0.85rem;
    background:
        radial-gradient(circle at 100% 0, rgba(112, 228, 173, 0.12), transparent 17rem),
        linear-gradient(122deg, rgba(14, 75, 81, 0.33), rgba(5, 18, 41, 0.72));
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.04);
}
.workspace-orientation__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(14rem, 0.72fr);
    gap: 0.8rem 1.25rem;
    align-items: end;
}
.workspace-orientation h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.05rem, 1.9vw, 1.38rem);
    letter-spacing: -0.04em;
    line-height: 1.18;
}
.workspace-orientation__header > p:not(.workspace-kicker) {
    margin: 0;
    color: var(--muted);
    font-size: 0.74rem;
    line-height: 1.53;
}
.workspace-context-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.58rem;
}
.workspace-context-card {
    min-width: 0;
    padding: 0.75rem;
    border: 1px solid rgba(156, 215, 255, 0.17);
    border-radius: 0.58rem;
    background: rgba(3, 17, 37, 0.54);
}
.workspace-context-card__label {
    display: block;
    color: var(--dim);
    font-size: 0.55rem;
    font-weight: 800;
    letter-spacing: 0.09em;
}
.workspace-context-card strong {
    display: block;
    margin-top: 0.42rem;
    color: #f5fbff;
    font-family: var(--display);
    font-size: 0.78rem;
    letter-spacing: -0.02em;
    line-height: 1.28;
}
.workspace-context-card p {
    margin: 0.3rem 0 0;
    color: var(--muted);
    font-size: 0.67rem;
    line-height: 1.42;
}
.workspace-context-card--safe {
    border-color: rgba(112, 228, 173, 0.25);
    background: linear-gradient(145deg, rgba(24, 111, 89, 0.18), rgba(3, 17, 37, 0.58));
}
.workspace-context-card--safe strong { color: var(--green); }
.workspace-context-card--path {
    border-color: rgba(245, 189, 89, 0.28);
    background: linear-gradient(145deg, rgba(94, 69, 30, 0.22), rgba(3, 17, 37, 0.58));
}
.workspace-context-card--path strong { color: #ffe2a6; }
.workspace-orientation__note {
    margin: 0;
    padding: 0.67rem 0.72rem;
    border-left: 2px solid var(--gold);
    background: rgba(245, 189, 89, 0.07);
    color: #e4eef8;
    font-size: 0.69rem;
    line-height: 1.5;
}

.system-map {
    padding: 1.1rem;
    display: grid;
    gap: 0.9rem;
    border: 1px solid rgba(156, 215, 255, 0.18);
    border-radius: 0.82rem;
    background: linear-gradient(132deg, rgba(29, 76, 134, 0.26), rgba(5, 18, 41, 0.71));
}
.system-map__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.8fr);
    gap: 0.72rem 1.1rem;
    align-items: end;
}
.system-map h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.02rem, 1.8vw, 1.32rem);
    letter-spacing: -0.038em;
    line-height: 1.18;
}
.system-map__header > p:not(.workspace-kicker) {
    margin: 0;
    color: var(--muted);
    font-size: 0.72rem;
    line-height: 1.5;
}
.system-map__nodes {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.5rem;
}
.system-map__node {
    min-height: 6.1rem;
    padding: 0.7rem;
    display: grid;
    align-content: start;
    gap: 0.36rem;
    border: 1px solid rgba(156, 215, 255, 0.2);
    border-radius: 0.58rem;
    background: rgba(3, 16, 35, 0.58);
    color: var(--muted);
    text-align: left;
    cursor: pointer;
    transition: border-color 160ms ease, background 160ms ease, color 160ms ease, transform 160ms ease;
}
.system-map__node:hover {
    border-color: rgba(156, 215, 255, 0.55);
    background: rgba(41, 102, 171, 0.24);
    color: #fff;
    transform: translateY(-1px);
}
.system-map__node.is-active {
    border-color: rgba(112, 228, 173, 0.56);
    background: linear-gradient(135deg, rgba(27, 119, 101, 0.36), rgba(15, 65, 98, 0.62));
    color: #fff;
    box-shadow: inset 0 0 0 1px rgba(112, 228, 173, 0.1), 0 0 22px rgba(79, 205, 162, 0.08);
}
.system-map__node-code {
    color: var(--blue);
    font-family: var(--display);
    font-size: 0.79rem;
    font-weight: 800;
    letter-spacing: 0.06em;
}
.system-map__node.is-active .system-map__node-code { color: var(--green); }
.system-map__node-name {
    display: block;
    color: #eaf5ff;
    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1.25;
}
.system-map__node-purpose {
    display: block;
    color: var(--dim);
    font-size: 0.58rem;
    line-height: 1.4;
}
.system-map__node.is-active .system-map__node-purpose { color: #c4deec; }
.system-map__route {
    padding: 0.86rem;
    border: 1px solid rgba(156, 215, 255, 0.15);
    border-radius: 0.62rem;
    background: rgba(3, 16, 35, 0.5);
}
.system-map__route-title {
    margin: 0;
    color: #f0f8ff;
    font-family: var(--display);
    font-size: 0.87rem;
    letter-spacing: -0.02em;
}
.system-map__route-list {
    margin: 0.72rem 0 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.52rem;
    list-style: none;
}
.system-map__route-list li {
    min-width: 0;
    padding: 0.62rem;
    border: 1px solid rgba(156, 215, 255, 0.12);
    border-radius: 0.5rem;
    background: rgba(7, 28, 58, 0.48);
}
.system-map__route-list span {
    color: var(--gold);
    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.085em;
}
.system-map__route-list p {
    margin: 0.36rem 0 0;
    color: var(--muted);
    font-size: 0.67rem;
    line-height: 1.45;
}
.system-map__notice {
    margin: 0;
    color: var(--dim);
    font-size: 0.67rem;
    line-height: 1.48;
}

.role-journey {
    padding: 1.1rem;
    display: grid;
    gap: 0.9rem;
    border: 1px solid rgba(245, 189, 89, 0.25);
    border-radius: 0.82rem;
    background: linear-gradient(132deg, rgba(99, 66, 25, 0.18), rgba(5, 18, 41, 0.74));
}
.role-journey__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.82fr);
    gap: 0.72rem 1.1rem;
    align-items: end;
}
.role-journey h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.02rem, 1.8vw, 1.32rem);
    letter-spacing: -0.038em;
    line-height: 1.18;
}
.role-journey__header > p {
    margin: 0;
    color: var(--muted);
    font-size: 0.72rem;
    line-height: 1.5;
}
.role-journey__steps {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.5rem;
    list-style: none;
}
.role-journey__step {
    min-width: 0;
    min-height: 10.5rem;
    padding: 0.72rem;
    display: grid;
    align-content: start;
    gap: 0.38rem;
    border: 1px solid rgba(156, 215, 255, 0.16);
    border-radius: 0.58rem;
    background: rgba(3, 16, 35, 0.54);
}
.role-journey__step--complete {
    border-color: rgba(112, 228, 173, 0.32);
    background: linear-gradient(135deg, rgba(23, 101, 80, 0.2), rgba(3, 16, 35, 0.58));
}
.role-journey__step--current {
    border-color: rgba(245, 189, 89, 0.6);
    background: linear-gradient(135deg, rgba(117, 76, 22, 0.34), rgba(20, 51, 79, 0.6));
    box-shadow: inset 0 0 0 1px rgba(245, 189, 89, 0.1), 0 0 24px rgba(245, 189, 89, 0.06);
}
.role-journey__step-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.role-journey__step-index {
    color: var(--blue);
    font-family: var(--display);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}
.role-journey__step-status {
    color: var(--dim);
    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}
.role-journey__step--complete .role-journey__step-status { color: var(--green); }
.role-journey__step--current .role-journey__step-status { color: var(--gold); }
.role-journey__system {
    color: var(--blue);
    font-family: var(--display);
    font-size: 0.61rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}
.role-journey__step h3 {
    margin: 0;
    color: #eff8ff;
    font-size: 0.78rem;
    line-height: 1.24;
}
.role-journey__step p {
    margin: 0;
    color: var(--dim);
    font-size: 0.64rem;
    line-height: 1.46;
}
.role-journey__controls {
    padding: 0.86rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.58rem 1rem;
    align-items: center;
    border: 1px solid rgba(245, 189, 89, 0.18);
    border-radius: 0.62rem;
    background: rgba(7, 27, 54, 0.5);
}
.role-journey__controls > h3 {
    margin: 0;
    color: #f4fbff;
    font-family: var(--display);
    font-size: 0.9rem;
    letter-spacing: -0.02em;
}
.role-journey__controls > p:not(.workspace-kicker) {
    margin: 0;
    color: var(--muted);
    font-size: 0.7rem;
    line-height: 1.5;
}
.role-journey__current-system { color: #d9ecf8 !important; }
.role-journey__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.42rem;
}
.role-journey__button {
    min-height: 2.35rem;
    padding: 0.54rem 0.7rem;
    border: 1px solid rgba(156, 215, 255, 0.34);
    border-radius: 0.48rem;
    background: rgba(10, 35, 68, 0.7);
    color: #e8f6ff;
    font: inherit;
    font-size: 0.65rem;
    font-weight: 700;
    cursor: pointer;
    transition: border-color 160ms ease, background 160ms ease, color 160ms ease, transform 160ms ease;
}
.role-journey__button:hover {
    border-color: rgba(156, 215, 255, 0.65);
    background: rgba(41, 102, 171, 0.34);
    color: #fff;
    transform: translateY(-1px);
}
.role-journey__button--primary {
    border-color: rgba(245, 189, 89, 0.58);
    background: linear-gradient(135deg, rgba(138, 90, 24, 0.76), rgba(82, 53, 16, 0.76));
    color: #fff3d8;
}
.role-journey__button--primary:hover {
    border-color: rgba(255, 219, 139, 0.9);
    background: linear-gradient(135deg, rgba(164, 106, 28, 0.84), rgba(104, 66, 18, 0.84));
}
.role-journey__note {
    margin: 0;
    color: var(--dim);
    font-size: 0.65rem;
    line-height: 1.48;
}

.identity-boundary {
    padding: 1.1rem;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(16rem, 0.88fr);
    gap: 1rem 1.25rem;
    align-items: stretch;
    border: 1px solid rgba(156, 215, 255, 0.2);
    border-radius: 0.8rem;
    background: linear-gradient(122deg, rgba(17, 57, 106, 0.26), rgba(5, 18, 41, 0.7));
}
.identity-boundary--active {
    border-color: rgba(112, 228, 173, 0.32);
    background: linear-gradient(122deg, rgba(20, 100, 88, 0.2), rgba(5, 18, 41, 0.72));
}
.identity-boundary--suspended, .identity-boundary--expired {
    border-color: rgba(245, 189, 89, 0.34);
    background: linear-gradient(122deg, rgba(112, 75, 27, 0.18), rgba(5, 18, 41, 0.72));
}
.identity-boundary__copy {
    min-width: 0;
}
.identity-boundary h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1rem, 1.8vw, 1.28rem);
    letter-spacing: -0.035em;
    line-height: 1.2;
}
.identity-boundary__copy > p:not(.workspace-kicker) {
    margin: 0.65rem 0 0;
    color: var(--muted);
    font-size: 0.76rem;
    line-height: 1.55;
}
.identity-boundary__status {
    min-width: 0;
    padding: 0.78rem;
    display: grid;
    align-content: start;
    gap: 0.65rem;
    border: 1px solid rgba(156, 215, 255, 0.13);
    border-radius: 0.62rem;
    background: rgba(3, 16, 35, 0.45);
}
.identity-boundary__state {
    width: max-content;
    max-width: 100%;
    padding: 0.23rem 0.43rem;
    border: 1px solid rgba(245, 189, 89, 0.34);
    border-radius: 999px;
    color: var(--gold);
    font-size: 0.57rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.identity-boundary--active .identity-boundary__state {
    border-color: rgba(112, 228, 173, 0.4);
    color: var(--green);
}
.identity-boundary__next strong {
    color: var(--blue);
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.11em;
}
.identity-boundary__next p {
    margin: 0.34rem 0 0;
    color: var(--dim);
    font-size: 0.7rem;
    line-height: 1.5;
}

.role-scope {
    padding: 1.1rem;
    border: 1px solid rgba(156, 215, 255, 0.16);
    border-radius: 0.78rem;
    background: linear-gradient(135deg, rgba(19, 58, 110, 0.3), rgba(5, 18, 41, 0.64));
}
.role-scope h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1rem, 1.8vw, 1.25rem);
    letter-spacing: -0.035em;
    line-height: 1.2;
}
.role-scope__list {
    margin: 1rem 0 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.62rem;
    list-style: none;
}
.role-scope__list li {
    min-width: 0;
    padding: 0.74rem;
    display: grid;
    grid-template-columns: 1.35rem minmax(0, 1fr);
    gap: 0.52rem;
    border: 1px solid rgba(156, 215, 255, 0.13);
    border-radius: 0.56rem;
    background: rgba(4, 15, 34, 0.42);
}
.role-scope__index {
    color: var(--gold);
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}
.role-scope__list p {
    margin: 0;
    color: var(--muted);
    font-size: 0.73rem;
    line-height: 1.52;
}
.role-scope__note {
    margin: 0.9rem 0 0;
    padding: 0.62rem 0.7rem;
    border-left: 2px solid var(--gold);
    background: rgba(245, 189, 89, 0.07);
    color: #e3edf8;
    font-size: 0.68rem;
    line-height: 1.5;
}

.operating-signals {
    padding: 0.05rem 0 0;
}
.operating-signals > .workspace-kicker {
    margin-bottom: 0.55rem;
}
.operating-signal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.72rem;
}
.operating-signal {
    min-width: 0;
    padding: 0.95rem 1rem;
    border: 1px solid rgba(156, 215, 255, 0.16);
    border-radius: 0.7rem;
    background: rgba(5, 18, 41, 0.58);
}
.operating-signal__heading {
    display: flex;
    align-items: center;
    gap: 0.52rem;
}
.operating-signal__number {
    min-width: 1.56rem;
    min-height: 1.56rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(245, 189, 89, 0.38);
    border-radius: 50%;
    color: var(--gold);
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}
.operating-signal strong {
    color: #edf7ff;
    font-family: var(--display);
    font-size: 0.83rem;
    letter-spacing: -0.02em;
}
.operating-signal p {
    margin: 0.72rem 0 0;
    color: var(--muted);
    font-size: 0.73rem;
    line-height: 1.53;
}

.prototype-workboard {
    padding: 1.1rem;
    border: 1px solid rgba(112, 228, 173, 0.22);
    border-radius: 0.78rem;
    background: linear-gradient(118deg, rgba(24, 111, 102, 0.16), rgba(5, 18, 41, 0.68));
}
.prototype-workboard__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(14rem, .65fr);
    gap: 0.7rem 1.2rem;
    align-items: end;
}
.prototype-workboard h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1rem, 1.9vw, 1.35rem);
    letter-spacing: -0.04em;
    line-height: 1.15;
}
.prototype-workboard__header > p:not(.workspace-kicker) {
    margin: 0;
    color: var(--dim);
    font-size: 0.71rem;
    line-height: 1.45;
}
.prototype-workboard__items {
    margin: 1rem 0 0;
    padding: 0;
    display: grid;
    gap: 0.5rem;
    list-style: none;
}
.prototype-workboard__item {
    display: grid;
    grid-template-columns: 1.55rem minmax(0, 1fr) auto;
    gap: 0.65rem;
    align-items: start;
    padding: 0.74rem;
    border: 1px solid rgba(112, 228, 173, 0.14);
    border-radius: 0.56rem;
    background: rgba(3, 16, 35, 0.42);
}
.prototype-workboard__order {
    width: 1.42rem;
    height: 1.42rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(112, 228, 173, 0.34);
    border-radius: 50%;
    color: var(--green);
    font-size: 0.56rem;
    font-weight: 800;
}
.prototype-workboard__item h3 {
    margin: 0;
    color: #effaf6;
    font-size: 0.77rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}
.prototype-workboard__item p {
    margin: 0.28rem 0 0;
    color: var(--muted);
    font-size: 0.73rem;
    line-height: 1.48;
}
.prototype-workboard__state {
    margin-top: 0.05rem;
    padding: 0.22rem 0.38rem;
    border: 1px solid rgba(112, 228, 173, 0.3);
    border-radius: 999px;
    color: var(--green);
    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.07em;
}

.mission-studio {
    padding: 1.15rem;
    display: grid;
    gap: 1rem;
    border: 1px solid rgba(120, 189, 255, 0.29);
    border-radius: 0.85rem;
    background:
        radial-gradient(circle at 94% 2%, rgba(245, 189, 89, 0.12), transparent 15rem),
        linear-gradient(128deg, rgba(18, 70, 125, 0.26), rgba(5, 18, 41, 0.75));
    box-shadow: inset 0 1px rgba(255,255,255,0.045);
}
.mission-studio__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.8rem 1rem;
    align-items: start;
}
.mission-studio__copy { min-width: 0; }
.mission-studio h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.08rem, 2vw, 1.42rem);
    letter-spacing: -0.04em;
    line-height: 1.17;
}
.mission-studio__copy > p:not(.workspace-kicker) {
    max-width: 52rem;
    margin: 0.62rem 0 0;
    color: var(--muted);
    font-size: 0.76rem;
    line-height: 1.55;
}
.mission-studio__sample-state {
    width: max-content;
    max-width: 100%;
    padding: 0.26rem 0.45rem;
    border: 1px solid rgba(245, 189, 89, 0.38);
    border-radius: 999px;
    color: var(--gold);
    background: rgba(245, 189, 89, 0.08);
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-align: center;
}
.mission-studio__stages {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.58rem;
    list-style: none;
}
.mission-studio__stage {
    min-width: 0;
    min-height: 8.75rem;
    padding: 0.78rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.62rem;
    background: rgba(3, 16, 35, 0.46);
}
.mission-studio__stage--complete {
    border-color: rgba(112,228,173,0.28);
    background: linear-gradient(132deg, rgba(26, 105, 88, 0.18), rgba(4, 20, 37, 0.56));
}
.mission-studio__stage--current {
    border-color: rgba(132, 204, 255, 0.52);
    background: linear-gradient(132deg, rgba(44, 123, 205, 0.22), rgba(5, 24, 50, 0.74));
    box-shadow: inset 0 0 0 1px rgba(120,189,255,0.08), 0 0 24px rgba(53,137,230,0.09);
}
.mission-studio__stage--upcoming { opacity: 0.77; }
.mission-studio__stage-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.mission-studio__stage-number {
    width: 1.48rem;
    height: 1.48rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(156,215,255,0.3);
    border-radius: 50%;
    color: var(--blue);
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}
.mission-studio__stage--complete .mission-studio__stage-number {
    border-color: rgba(112,228,173,0.42);
    color: var(--green);
}
.mission-studio__stage--current .mission-studio__stage-number {
    border-color: rgba(245,189,89,0.55);
    color: var(--gold);
}
.mission-studio__stage-status {
    padding: 0.2rem 0.34rem;
    border: 1px solid rgba(156,215,255,0.18);
    border-radius: 999px;
    color: var(--dim);
    font-size: 0.5rem;
    font-weight: 800;
    letter-spacing: 0.065em;
    text-align: right;
}
.mission-studio__stage--complete .mission-studio__stage-status {
    border-color: rgba(112,228,173,0.3);
    color: var(--green);
}
.mission-studio__stage--current .mission-studio__stage-status {
    border-color: rgba(245,189,89,0.35);
    color: var(--gold);
}
.mission-studio__stage h3 {
    margin: 0.75rem 0 0;
    color: #eff8ff;
    font-family: var(--display);
    font-size: 0.83rem;
    letter-spacing: -0.02em;
}
.mission-studio__stage p {
    margin: 0.38rem 0 0;
    color: var(--muted);
    font-size: 0.69rem;
    line-height: 1.47;
}
.mission-studio__controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.88fr);
    gap: 0.68rem;
}
.mission-studio__responsibility, .mission-studio__trace {
    min-width: 0;
    padding: 0.95rem;
    border: 1px solid rgba(156,215,255,0.15);
    border-radius: 0.65rem;
    background: rgba(3, 15, 34, 0.47);
}
.mission-studio__responsibility h3 {
    margin: 0.46rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: 1rem;
    letter-spacing: -0.025em;
}
.mission-studio__responsibility > p:not(.mission-studio__observer) {
    margin: 0.68rem 0 0;
    color: var(--muted);
    font-size: 0.74rem;
    line-height: 1.52;
}
.mission-studio__selected-context {
    padding: 0.48rem 0.58rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.42rem;
    background: rgba(43,103,165,0.13);
    color: #dceeff !important;
    font-size: 0.67rem !important;
}
.mission-studio__needed {
    margin: 0.78rem 0 0;
    display: grid;
    grid-template-columns: minmax(7.25rem, 0.55fr) minmax(0, 1fr);
    gap: 0.42rem 0.78rem;
}
.mission-studio__needed dt {
    color: var(--dim);
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}
.mission-studio__needed dd {
    margin: 0;
    color: var(--blue);
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.35;
}
.mission-studio__advance, .mission-studio__reset {
    min-height: 2.25rem;
    border-radius: 0.46rem;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.055em;
    cursor: pointer;
}
.mission-studio__advance {
    width: 100%;
    margin-top: 0.9rem;
    padding: 0.52rem 0.68rem;
    border: 1px solid rgba(129,204,255,0.56);
    background: linear-gradient(135deg, rgba(54, 147, 234, 0.92), rgba(31, 88, 177, 0.94));
    color: #fff;
    text-align: left;
    transition: transform 160ms ease, box-shadow 160ms ease;
}
.mission-studio__advance:hover { transform: translateY(-1px); box-shadow: 0 8px 22px rgba(36,117,208,0.28); }
.mission-studio__observer {
    margin: 0.82rem 0 0;
    padding: 0.62rem 0.68rem;
    border-left: 2px solid var(--gold);
    background: rgba(245,189,89,0.08);
    color: #e5eef9;
    font-size: 0.7rem;
    line-height: 1.48;
}
.mission-studio__trace { background: rgba(5, 19, 42, 0.66); }
.mission-studio__feedback {
    margin: 0.55rem 0 0;
    color: var(--green);
    font-size: 0.69rem;
    font-weight: 600;
    line-height: 1.45;
}
.mission-studio__trace-list {
    margin: 0.75rem 0 0;
    padding: 0;
    display: grid;
    gap: 0.42rem;
    list-style: none;
}
.mission-studio__trace-empty {
    padding: 0.58rem 0.62rem;
    border: 1px dashed rgba(156,215,255,0.22);
    border-radius: 0.44rem;
    color: var(--dim);
    font-size: 0.68rem;
    line-height: 1.45;
}
.mission-studio__trace-item {
    display: grid;
    grid-template-columns: 1.35rem minmax(0, 1fr);
    gap: 0.2rem 0.5rem;
    align-items: start;
    padding: 0.54rem 0.58rem;
    border: 1px solid rgba(112,228,173,0.14);
    border-radius: 0.45rem;
    color: #e8f6f1;
    font-size: 0.67rem;
    line-height: 1.38;
}
.mission-studio__trace-index {
    grid-row: span 2;
    color: var(--green);
    font-size: 0.56rem;
    font-weight: 800;
}
.mission-studio__trace-actor {
    color: var(--dim);
    font-size: 0.62rem;
}
.mission-studio__reset {
    width: 100%;
    margin-top: 0.7rem;
    padding: 0.48rem 0.64rem;
    border: 1px solid var(--line);
    background: rgba(26,67,113,0.2);
    color: var(--blue);
    text-align: center;
}
.mission-studio__reset:hover { border-color: var(--line-strong); color: #fff; }
.mission-studio__disclaimer {
    margin: 0;
    padding: 0.7rem 0.78rem;
    border-left: 2px solid var(--blue-bright);
    background: rgba(45,126,205,0.08);
    color: var(--muted);
    font-size: 0.7rem;
    line-height: 1.5;
}

.relationship-evidence {
    padding: 1.15rem;
    display: grid;
    gap: 1rem;
    border: 1px solid rgba(245, 189, 89, 0.32);
    border-radius: 0.85rem;
    background:
        radial-gradient(circle at 4% 1%, rgba(245, 189, 89, 0.12), transparent 15rem),
        radial-gradient(circle at 100% 100%, rgba(69, 196, 165, 0.1), transparent 18rem),
        linear-gradient(132deg, rgba(64, 49, 25, 0.28), rgba(5, 18, 41, 0.79));
    box-shadow: inset 0 1px rgba(255,255,255,0.045);
}
.relationship-evidence__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.8rem 1rem;
    align-items: start;
}
.relationship-evidence__copy { min-width: 0; }
.relationship-evidence h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.08rem, 2vw, 1.42rem);
    letter-spacing: -0.04em;
    line-height: 1.17;
}
.relationship-evidence__copy > p:not(.workspace-kicker) {
    max-width: 52rem;
    margin: 0.62rem 0 0;
    color: var(--muted);
    font-size: 0.76rem;
    line-height: 1.55;
}
.relationship-evidence__status {
    display: grid;
    gap: 0.34rem;
    justify-items: end;
}
.relationship-evidence__sample-state, .relationship-evidence__public-status {
    width: max-content;
    max-width: 100%;
    padding: 0.26rem 0.45rem;
    border-radius: 999px;
    font-size: 0.54rem;
    font-weight: 800;
    letter-spacing: 0.075em;
    text-align: center;
}
.relationship-evidence__sample-state {
    border: 1px solid rgba(245, 189, 89, 0.38);
    color: var(--gold);
    background: rgba(245, 189, 89, 0.08);
}
.relationship-evidence__public-status {
    border: 1px solid rgba(255, 163, 133, 0.36);
    color: #ffd0c0;
    background: rgba(186, 72, 42, 0.13);
}
.relationship-evidence__stages {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.58rem;
    list-style: none;
}
.relationship-evidence__stage {
    min-width: 0;
    min-height: 9.15rem;
    padding: 0.78rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.62rem;
    background: rgba(3, 16, 35, 0.48);
}
.relationship-evidence__stage--complete {
    border-color: rgba(112,228,173,0.27);
    background: linear-gradient(132deg, rgba(26, 105, 88, 0.16), rgba(4, 20, 37, 0.58));
}
.relationship-evidence__stage--current {
    border-color: rgba(245,189,89,0.58);
    background: linear-gradient(132deg, rgba(147, 103, 29, 0.22), rgba(22, 27, 35, 0.76));
    box-shadow: inset 0 0 0 1px rgba(245,189,89,0.08), 0 0 24px rgba(245,189,89,0.08);
}
.relationship-evidence__stage--upcoming { opacity: 0.77; }
.relationship-evidence__stage-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.relationship-evidence__stage-number {
    width: 1.48rem;
    height: 1.48rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(156,215,255,0.3);
    border-radius: 50%;
    color: var(--blue);
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}
.relationship-evidence__stage--complete .relationship-evidence__stage-number {
    border-color: rgba(112,228,173,0.42);
    color: var(--green);
}
.relationship-evidence__stage--current .relationship-evidence__stage-number {
    border-color: rgba(245,189,89,0.55);
    color: var(--gold);
}
.relationship-evidence__stage-status {
    padding: 0.2rem 0.34rem;
    border: 1px solid rgba(156,215,255,0.18);
    border-radius: 999px;
    color: var(--dim);
    font-size: 0.49rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-align: right;
}
.relationship-evidence__stage--complete .relationship-evidence__stage-status {
    border-color: rgba(112,228,173,0.3);
    color: var(--green);
}
.relationship-evidence__stage--current .relationship-evidence__stage-status {
    border-color: rgba(245,189,89,0.35);
    color: var(--gold);
}
.relationship-evidence__stage h3 {
    margin: 0.75rem 0 0;
    color: #eff8ff;
    font-family: var(--display);
    font-size: 0.82rem;
    letter-spacing: -0.02em;
    line-height: 1.2;
}
.relationship-evidence__stage p {
    margin: 0.38rem 0 0;
    color: var(--muted);
    font-size: 0.68rem;
    line-height: 1.46;
}
.relationship-evidence__controls {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(17rem, 0.8fr);
    gap: 0.68rem;
}
.relationship-evidence__decisions, .relationship-evidence__trace {
    min-width: 0;
    padding: 0.95rem;
    border: 1px solid rgba(156,215,255,0.15);
    border-radius: 0.65rem;
    background: rgba(3, 15, 34, 0.5);
}
.relationship-evidence__decisions h3 {
    margin: 0.46rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: 1rem;
    letter-spacing: -0.025em;
}
.relationship-evidence__selected-role, .relationship-evidence__complete {
    margin: 0.68rem 0 0;
    padding: 0.48rem 0.58rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.42rem;
    background: rgba(43,103,165,0.13);
    color: #dceeff;
    font-size: 0.68rem;
    line-height: 1.45;
}
.relationship-evidence__decisions > .workspace-kicker:not(:first-child) {
    margin-top: 0.95rem;
}
.relationship-evidence__action-list {
    margin-top: 0.46rem;
    display: grid;
    gap: 0.46rem;
}
.relationship-evidence__action {
    padding: 0.62rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(9.4rem, 0.76fr);
    gap: 0.58rem;
    align-items: center;
    border: 1px solid rgba(156,215,255,0.13);
    border-radius: 0.48rem;
    background: rgba(8, 29, 58, 0.46);
}
.relationship-evidence__requirement {
    margin: 0;
    min-width: 0;
}
.relationship-evidence__requirement dt {
    color: var(--dim);
    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.075em;
}
.relationship-evidence__requirement dd {
    margin: 0.28rem 0 0;
    color: #dceeff;
    font-size: 0.66rem;
    font-weight: 600;
    line-height: 1.42;
}
.relationship-evidence__action-button, .relationship-evidence__reset {
    min-height: 2.2rem;
    border-radius: 0.46rem;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.045em;
}
.relationship-evidence__action-button {
    width: 100%;
    padding: 0.5rem 0.62rem;
    border: 1px solid rgba(245,189,89,0.55);
    background: linear-gradient(135deg, rgba(183, 132, 35, 0.92), rgba(112, 73, 18, 0.96));
    color: #fff;
    cursor: pointer;
    transition: transform 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
}
.relationship-evidence__action-button:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(178,124,27,0.24);
}
.relationship-evidence__action-button--return-for-evidence {
    border-color: rgba(127, 196, 255, 0.5);
    background: rgba(29, 96, 165, 0.36);
}
.relationship-evidence__action-button--close-review, .relationship-evidence__action-button--retire-review {
    border-color: rgba(255, 162, 133, 0.45);
    background: rgba(136, 63, 42, 0.38);
}
.relationship-evidence__action-button:disabled {
    opacity: 0.42;
    cursor: not-allowed;
}
.relationship-evidence__observer {
    margin: 0.75rem 0 0;
    padding: 0.62rem 0.68rem;
    border-left: 2px solid var(--gold);
    background: rgba(245,189,89,0.08);
    color: #e5eef9;
    font-size: 0.7rem;
    line-height: 1.48;
}
.relationship-evidence__trace { background: rgba(5, 19, 42, 0.68); }
.relationship-evidence__feedback {
    margin: 0.55rem 0 0;
    color: var(--green);
    font-size: 0.69rem;
    font-weight: 600;
    line-height: 1.45;
}
.relationship-evidence__trace-list {
    margin: 0.75rem 0 0;
    padding: 0;
    display: grid;
    gap: 0.42rem;
    list-style: none;
}
.relationship-evidence__trace-empty {
    padding: 0.58rem 0.62rem;
    border: 1px dashed rgba(156,215,255,0.22);
    border-radius: 0.44rem;
    color: var(--dim);
    font-size: 0.68rem;
    line-height: 1.45;
}
.relationship-evidence__trace-item {
    display: grid;
    grid-template-columns: 1.35rem minmax(0, 1fr);
    gap: 0.2rem 0.5rem;
    align-items: start;
    padding: 0.54rem 0.58rem;
    border: 1px solid rgba(112,228,173,0.14);
    border-radius: 0.45rem;
    color: #e8f6f1;
    font-size: 0.67rem;
    line-height: 1.38;
}
.relationship-evidence__trace-index {
    grid-row: span 2;
    color: var(--green);
    font-size: 0.56rem;
    font-weight: 800;
}
.relationship-evidence__trace-actor {
    color: var(--dim);
    font-size: 0.61rem;
}
.relationship-evidence__reset {
    width: 100%;
    margin-top: 0.7rem;
    padding: 0.48rem 0.64rem;
    border: 1px solid var(--line);
    background: rgba(26,67,113,0.2);
    color: var(--blue);
    cursor: pointer;
    text-align: center;
}
.relationship-evidence__reset:hover { border-color: var(--line-strong); color: #fff; }
.relationship-evidence__disclaimer {
    margin: 0;
    padding: 0.7rem 0.78rem;
    border-left: 2px solid var(--gold);
    background: rgba(245,189,89,0.07);
    color: var(--muted);
    font-size: 0.7rem;
    line-height: 1.5;
}

.capability-commitment {
    padding: 1.15rem;
    display: grid;
    gap: 1rem;
    border: 1px solid rgba(183, 155, 255, 0.34);
    border-radius: 0.85rem;
    background:
        radial-gradient(circle at 96% 2%, rgba(183, 155, 255, 0.14), transparent 15rem),
        radial-gradient(circle at 4% 100%, rgba(69, 196, 165, 0.1), transparent 18rem),
        linear-gradient(132deg, rgba(49, 35, 85, 0.29), rgba(5, 18, 41, 0.8));
    box-shadow: inset 0 1px rgba(255,255,255,0.045);
}
.capability-commitment__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.8rem 1rem;
    align-items: start;
}
.capability-commitment__copy { min-width: 0; }
.capability-commitment h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.08rem, 2vw, 1.42rem);
    letter-spacing: -0.04em;
    line-height: 1.17;
}
.capability-commitment__copy > p:not(.workspace-kicker) {
    max-width: 52rem;
    margin: 0.62rem 0 0;
    color: var(--muted);
    font-size: 0.76rem;
    line-height: 1.55;
}
.capability-commitment__guardrails {
    display: grid;
    gap: 0.34rem;
    justify-items: end;
}
.capability-commitment__guardrail {
    width: max-content;
    max-width: 100%;
    padding: 0.26rem 0.45rem;
    border-radius: 999px;
    font-size: 0.53rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-align: center;
}
.capability-commitment__guardrail--level-zero {
    border: 1px solid rgba(112, 228, 173, 0.37);
    color: var(--green);
    background: rgba(112, 228, 173, 0.08);
}
.capability-commitment__guardrail--no-authority {
    border: 1px solid rgba(183, 155, 255, 0.39);
    color: #decfff;
    background: rgba(126, 91, 202, 0.13);
}
.capability-commitment__stages {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.58rem;
    list-style: none;
}
.capability-commitment__stage {
    min-width: 0;
    min-height: 9.1rem;
    padding: 0.78rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.62rem;
    background: rgba(3, 16, 35, 0.48);
}
.capability-commitment__stage--complete {
    border-color: rgba(112,228,173,0.27);
    background: linear-gradient(132deg, rgba(26, 105, 88, 0.16), rgba(4, 20, 37, 0.58));
}
.capability-commitment__stage--current {
    border-color: rgba(183,155,255,0.58);
    background: linear-gradient(132deg, rgba(100, 66, 169, 0.26), rgba(19, 22, 45, 0.77));
    box-shadow: inset 0 0 0 1px rgba(183,155,255,0.08), 0 0 24px rgba(143,101,227,0.08);
}
.capability-commitment__stage--upcoming { opacity: 0.77; }
.capability-commitment__stage-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.capability-commitment__stage-number {
    width: 1.48rem;
    height: 1.48rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(156,215,255,0.3);
    border-radius: 50%;
    color: var(--blue);
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}
.capability-commitment__stage--complete .capability-commitment__stage-number {
    border-color: rgba(112,228,173,0.42);
    color: var(--green);
}
.capability-commitment__stage--current .capability-commitment__stage-number {
    border-color: rgba(183,155,255,0.58);
    color: #decfff;
}
.capability-commitment__stage-status {
    padding: 0.2rem 0.34rem;
    border: 1px solid rgba(156,215,255,0.18);
    border-radius: 999px;
    color: var(--dim);
    font-size: 0.49rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-align: right;
}
.capability-commitment__stage--complete .capability-commitment__stage-status {
    border-color: rgba(112,228,173,0.3);
    color: var(--green);
}
.capability-commitment__stage--current .capability-commitment__stage-status {
    border-color: rgba(183,155,255,0.38);
    color: #decfff;
}
.capability-commitment__stage h3 {
    margin: 0.75rem 0 0;
    color: #eff8ff;
    font-family: var(--display);
    font-size: 0.82rem;
    letter-spacing: -0.02em;
    line-height: 1.2;
}
.capability-commitment__stage p {
    margin: 0.38rem 0 0;
    color: var(--muted);
    font-size: 0.68rem;
    line-height: 1.46;
}
.capability-commitment__controls {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(17rem, 0.8fr);
    gap: 0.68rem;
}
.capability-commitment__decisions, .capability-commitment__trace {
    min-width: 0;
    padding: 0.95rem;
    border: 1px solid rgba(156,215,255,0.15);
    border-radius: 0.65rem;
    background: rgba(3, 15, 34, 0.5);
}
.capability-commitment__decisions h3 {
    margin: 0.46rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: 1rem;
    letter-spacing: -0.025em;
}
.capability-commitment__selected-role, .capability-commitment__complete {
    margin: 0.68rem 0 0;
    padding: 0.48rem 0.58rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.42rem;
    background: rgba(92, 67, 165, 0.15);
    color: #e9e3ff;
    font-size: 0.68rem;
    line-height: 1.45;
}
.capability-commitment__decisions > .workspace-kicker:not(:first-child) { margin-top: 0.95rem; }
.capability-commitment__action-list {
    margin-top: 0.46rem;
    display: grid;
    gap: 0.46rem;
}
.capability-commitment__action {
    padding: 0.62rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(9.4rem, 0.76fr);
    gap: 0.58rem;
    align-items: center;
    border: 1px solid rgba(156,215,255,0.13);
    border-radius: 0.48rem;
    background: rgba(16, 24, 61, 0.49);
}
.capability-commitment__requirement { margin: 0; min-width: 0; }
.capability-commitment__requirement dt {
    color: var(--dim);
    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.075em;
}
.capability-commitment__requirement dd {
    margin: 0.28rem 0 0;
    color: #e4dcff;
    font-size: 0.66rem;
    font-weight: 600;
    line-height: 1.42;
}
.capability-commitment__action-button, .capability-commitment__reset {
    min-height: 2.2rem;
    border-radius: 0.46rem;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.045em;
}
.capability-commitment__action-button {
    width: 100%;
    padding: 0.5rem 0.62rem;
    border: 1px solid rgba(183,155,255,0.6);
    background: linear-gradient(135deg, rgba(126, 91, 202, 0.96), rgba(68, 49, 128, 0.96));
    color: #fff;
    cursor: pointer;
    transition: transform 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
}
.capability-commitment__action-button:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(120,86,200,0.25);
}
.capability-commitment__action-button--defer-to-level-zero {
    border-color: rgba(112, 228, 173, 0.48);
    background: rgba(24, 115, 87, 0.48);
}
.capability-commitment__action-button--return-to-need, .capability-commitment__action-button--return-for-lifecycle {
    border-color: rgba(127, 196, 255, 0.5);
    background: rgba(29, 96, 165, 0.36);
}
.capability-commitment__action-button--revise-concept {
    border-color: rgba(245,189,89,0.52);
    background: rgba(150, 103, 22, 0.48);
}
.capability-commitment__action-button:disabled {
    opacity: 0.42;
    cursor: not-allowed;
}
.capability-commitment__observer {
    margin: 0.75rem 0 0;
    padding: 0.62rem 0.68rem;
    border-left: 2px solid #b79bff;
    background: rgba(126,91,202,0.1);
    color: #e8e1ff;
    font-size: 0.7rem;
    line-height: 1.48;
}
.capability-commitment__outcome {
    margin-top: 0.84rem;
    padding: 0.72rem;
    border: 1px solid rgba(112,228,173,0.24);
    border-radius: 0.5rem;
    background: linear-gradient(135deg, rgba(25,105,85,0.16), rgba(10,27,53,0.5));
}
.capability-commitment__outcome h4 {
    margin: 0.42rem 0 0;
    color: #edfff7;
    font-family: var(--display);
    font-size: 0.83rem;
    letter-spacing: -0.018em;
}
.capability-commitment__outcome p {
    margin: 0.38rem 0 0;
    color: var(--muted);
    font-size: 0.68rem;
    line-height: 1.45;
}
.capability-commitment__trace { background: rgba(5, 19, 42, 0.68); }
.capability-commitment__feedback {
    margin: 0.55rem 0 0;
    color: var(--green);
    font-size: 0.69rem;
    font-weight: 600;
    line-height: 1.45;
}
.capability-commitment__trace-list {
    margin: 0.75rem 0 0;
    padding: 0;
    display: grid;
    gap: 0.42rem;
    list-style: none;
}
.capability-commitment__trace-empty {
    padding: 0.58rem 0.62rem;
    border: 1px dashed rgba(156,215,255,0.22);
    border-radius: 0.44rem;
    color: var(--dim);
    font-size: 0.68rem;
    line-height: 1.45;
}
.capability-commitment__trace-item {
    display: grid;
    grid-template-columns: 1.35rem minmax(0, 1fr);
    gap: 0.2rem 0.5rem;
    align-items: start;
    padding: 0.54rem 0.58rem;
    border: 1px solid rgba(112,228,173,0.14);
    border-radius: 0.45rem;
    color: #e8f6f1;
    font-size: 0.67rem;
    line-height: 1.38;
}
.capability-commitment__trace-index {
    grid-row: span 2;
    color: var(--green);
    font-size: 0.56rem;
    font-weight: 800;
}
.capability-commitment__trace-actor { color: var(--dim); font-size: 0.61rem; }
.capability-commitment__reset {
    width: 100%;
    margin-top: 0.7rem;
    padding: 0.48rem 0.64rem;
    border: 1px solid var(--line);
    background: rgba(26,67,113,0.2);
    color: var(--blue);
    cursor: pointer;
    text-align: center;
}
.capability-commitment__reset:hover { border-color: var(--line-strong); color: #fff; }
.capability-commitment__disclaimer {
    margin: 0;
    padding: 0.7rem 0.78rem;
    border-left: 2px solid #b79bff;
    background: rgba(126,91,202,0.08);
    color: var(--muted);
    font-size: 0.7rem;
    line-height: 1.5;
}

.admissions-route {
    padding: 1.15rem;
    display: grid;
    gap: 1rem;
    border: 1px solid rgba(76, 215, 205, 0.32);
    border-radius: 0.85rem;
    background:
        radial-gradient(circle at 4% 2%, rgba(76, 215, 205, 0.13), transparent 15rem),
        radial-gradient(circle at 100% 100%, rgba(83, 152, 255, 0.1), transparent 18rem),
        linear-gradient(132deg, rgba(18, 72, 79, 0.28), rgba(5, 18, 41, 0.8));
    box-shadow: inset 0 1px rgba(255,255,255,0.045);
}
.admissions-route__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.8rem 1rem;
    align-items: start;
}
.admissions-route__copy { min-width: 0; }
.admissions-route h2 {
    margin: 0.48rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1.08rem, 2vw, 1.42rem);
    letter-spacing: -0.04em;
    line-height: 1.17;
}
.admissions-route__copy > p:not(.workspace-kicker) {
    max-width: 52rem;
    margin: 0.62rem 0 0;
    color: var(--muted);
    font-size: 0.76rem;
    line-height: 1.55;
}
.admissions-route__status {
    display: grid;
    gap: 0.34rem;
    justify-items: end;
}
.admissions-route__formal-status, .admissions-route__no-record {
    width: max-content;
    max-width: 100%;
    padding: 0.26rem 0.45rem;
    border-radius: 999px;
    font-size: 0.53rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-align: center;
}
.admissions-route__formal-status {
    border: 1px solid rgba(255, 163, 133, 0.38);
    color: #ffd0c0;
    background: rgba(186, 72, 42, 0.13);
}
.admissions-route__no-record {
    border: 1px solid rgba(76, 215, 205, 0.38);
    color: #c7fffa;
    background: rgba(28, 146, 140, 0.12);
}
.admissions-route__stages {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.58rem;
    list-style: none;
}
.admissions-route__stage {
    min-width: 0;
    min-height: 9.15rem;
    padding: 0.78rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.62rem;
    background: rgba(3, 16, 35, 0.48);
}
.admissions-route__stage--complete {
    border-color: rgba(112,228,173,0.27);
    background: linear-gradient(132deg, rgba(26, 105, 88, 0.16), rgba(4, 20, 37, 0.58));
}
.admissions-route__stage--current {
    border-color: rgba(76,215,205,0.56);
    background: linear-gradient(132deg, rgba(27, 128, 121, 0.25), rgba(6, 29, 49, 0.76));
    box-shadow: inset 0 0 0 1px rgba(76,215,205,0.08), 0 0 24px rgba(48,192,182,0.08);
}
.admissions-route__stage--upcoming { opacity: 0.77; }
.admissions-route__stage-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.admissions-route__stage-number {
    width: 1.48rem;
    height: 1.48rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(156,215,255,0.3);
    border-radius: 50%;
    color: var(--blue);
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}
.admissions-route__stage--complete .admissions-route__stage-number {
    border-color: rgba(112,228,173,0.42);
    color: var(--green);
}
.admissions-route__stage--current .admissions-route__stage-number {
    border-color: rgba(76,215,205,0.58);
    color: #c7fffa;
}
.admissions-route__stage-status {
    padding: 0.2rem 0.34rem;
    border: 1px solid rgba(156,215,255,0.18);
    border-radius: 999px;
    color: var(--dim);
    font-size: 0.49rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-align: right;
}
.admissions-route__stage--complete .admissions-route__stage-status {
    border-color: rgba(112,228,173,0.3);
    color: var(--green);
}
.admissions-route__stage--current .admissions-route__stage-status {
    border-color: rgba(76,215,205,0.36);
    color: #c7fffa;
}
.admissions-route__stage h3 {
    margin: 0.75rem 0 0;
    color: #eff8ff;
    font-family: var(--display);
    font-size: 0.82rem;
    letter-spacing: -0.02em;
    line-height: 1.2;
}
.admissions-route__stage p {
    margin: 0.38rem 0 0;
    color: var(--muted);
    font-size: 0.68rem;
    line-height: 1.46;
}
.admissions-route__controls {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(17rem, 0.8fr);
    gap: 0.68rem;
}
.admissions-route__decisions, .admissions-route__trace {
    min-width: 0;
    padding: 0.95rem;
    border: 1px solid rgba(156,215,255,0.15);
    border-radius: 0.65rem;
    background: rgba(3, 15, 34, 0.5);
}
.admissions-route__decisions h3 {
    margin: 0.46rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: 1rem;
    letter-spacing: -0.025em;
}
.admissions-route__selected-role, .admissions-route__complete {
    margin: 0.68rem 0 0;
    padding: 0.48rem 0.58rem;
    border: 1px solid rgba(76,215,205,0.16);
    border-radius: 0.42rem;
    background: rgba(22, 117, 112, 0.14);
    color: #d8fffb;
    font-size: 0.68rem;
    line-height: 1.45;
}
.admissions-route__decisions > .workspace-kicker:not(:first-child) { margin-top: 0.95rem; }
.admissions-route__action-list {
    margin-top: 0.46rem;
    display: grid;
    gap: 0.46rem;
}
.admissions-route__action {
    padding: 0.62rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(9.4rem, 0.76fr);
    gap: 0.58rem;
    align-items: center;
    border: 1px solid rgba(156,215,255,0.13);
    border-radius: 0.48rem;
    background: rgba(5, 44, 60, 0.47);
}
.admissions-route__requirement { margin: 0; min-width: 0; }
.admissions-route__requirement dt {
    color: var(--dim);
    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.075em;
}
.admissions-route__requirement dd {
    margin: 0.28rem 0 0;
    color: #d8fffb;
    font-size: 0.66rem;
    font-weight: 600;
    line-height: 1.42;
}
.admissions-route__action-button, .admissions-route__reset {
    min-height: 2.2rem;
    border-radius: 0.46rem;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.045em;
}
.admissions-route__action-button {
    width: 100%;
    padding: 0.5rem 0.62rem;
    border: 1px solid rgba(76,215,205,0.6);
    background: linear-gradient(135deg, rgba(29, 157, 147, 0.96), rgba(17, 92, 95, 0.96));
    color: #fff;
    cursor: pointer;
    transition: transform 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
}
.admissions-route__action-button:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(28,157,147,0.25);
}
.admissions-route__action-button--return-to-brief, .admissions-route__action-button--return-for-readiness {
    border-color: rgba(127, 196, 255, 0.5);
    background: rgba(29, 96, 165, 0.36);
}
.admissions-route__action-button--continue-with-brief {
    border-color: rgba(245,189,89,0.52);
    background: rgba(150, 103, 22, 0.48);
}
.admissions-route__action-button--map-future-registry-route {
    border-color: rgba(112, 228, 173, 0.48);
    background: rgba(24, 115, 87, 0.48);
}
.admissions-route__action-button:disabled {
    opacity: 0.42;
    cursor: not-allowed;
}
.admissions-route__observer {
    margin: 0.75rem 0 0;
    padding: 0.62rem 0.68rem;
    border-left: 2px solid #4cd7cd;
    background: rgba(28,146,140,0.1);
    color: #d8fffb;
    font-size: 0.7rem;
    line-height: 1.48;
}
.admissions-route__outcome {
    margin-top: 0.84rem;
    padding: 0.72rem;
    border: 1px solid rgba(112,228,173,0.24);
    border-radius: 0.5rem;
    background: linear-gradient(135deg, rgba(25,105,85,0.16), rgba(10,27,53,0.5));
}
.admissions-route__outcome h4 {
    margin: 0.42rem 0 0;
    color: #edfff7;
    font-family: var(--display);
    font-size: 0.83rem;
    letter-spacing: -0.018em;
}
.admissions-route__outcome p {
    margin: 0.38rem 0 0;
    color: var(--muted);
    font-size: 0.68rem;
    line-height: 1.45;
}
.admissions-route__trace { background: rgba(5, 19, 42, 0.68); }
.admissions-route__feedback {
    margin: 0.55rem 0 0;
    color: var(--green);
    font-size: 0.69rem;
    font-weight: 600;
    line-height: 1.45;
}
.admissions-route__trace-list {
    margin: 0.75rem 0 0;
    padding: 0;
    display: grid;
    gap: 0.42rem;
    list-style: none;
}
.admissions-route__trace-empty {
    padding: 0.58rem 0.62rem;
    border: 1px dashed rgba(156,215,255,0.22);
    border-radius: 0.44rem;
    color: var(--dim);
    font-size: 0.68rem;
    line-height: 1.45;
}
.admissions-route__trace-item {
    display: grid;
    grid-template-columns: 1.35rem minmax(0, 1fr);
    gap: 0.2rem 0.5rem;
    align-items: start;
    padding: 0.54rem 0.58rem;
    border: 1px solid rgba(112,228,173,0.14);
    border-radius: 0.45rem;
    color: #e8f6f1;
    font-size: 0.67rem;
    line-height: 1.38;
}
.admissions-route__trace-index {
    grid-row: span 2;
    color: var(--green);
    font-size: 0.56rem;
    font-weight: 800;
}
.admissions-route__trace-actor { color: var(--dim); font-size: 0.61rem; }
.admissions-route__reset {
    width: 100%;
    margin-top: 0.7rem;
    padding: 0.48rem 0.64rem;
    border: 1px solid var(--line);
    background: rgba(26,67,113,0.2);
    color: var(--blue);
    cursor: pointer;
    text-align: center;
}
.admissions-route__reset:hover { border-color: var(--line-strong); color: #fff; }
.admissions-route__disclaimer {
    margin: 0;
    padding: 0.7rem 0.78rem;
    border-left: 2px solid #4cd7cd;
    background: rgba(28,146,140,0.08);
    color: var(--muted);
    font-size: 0.7rem;
    line-height: 1.5;
}
.system-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.72rem;
}
.system-card {
    min-width: 0;
    min-height: 12.7rem;
    padding: 1rem;
    border: 1px solid rgba(156,215,255,0.15);
    border-radius: 0.7rem;
    background: linear-gradient(145deg, rgba(44,95,153,0.2), rgba(7,22,48,0.68));
}
.system-card__label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.55rem;
    color: var(--blue);
    font-size: 0.61rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}
.system-card__state {
    padding: 0.18rem 0.34rem;
    border: 1px solid rgba(245,189,89,0.28);
    border-radius: 999px;
    color: var(--gold);
    font-size: 0.52rem;
    letter-spacing: 0.07em;
}
.system-card h2 {
    margin: 1.05rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: 1rem;
    letter-spacing: -0.025em;
    line-height: 1.18;
}
.system-card p {
    margin: 0.55rem 0 0;
    color: var(--muted);
    font-size: 0.75rem;
    line-height: 1.55;
}
.system-card__footer {
    margin-top: 1rem;
    display: flex;
    align-items: center;
    gap: 0.42rem;
    color: var(--green);
    font-size: 0.62rem;
    font-weight: 600;
}
.system-card__footer::before { width: 0.42rem; height: 0.42rem; border-radius: 50%; background: currentColor; content: ""; box-shadow: 0 0 8px currentColor; }

.workflow-layout {
    margin-top: 0.75rem;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(15rem, 0.85fr);
    gap: 0.72rem;
}
.workflow-panel, .boundary-panel {
    padding: 1.1rem;
    border: 1px solid rgba(156,215,255,0.15);
    border-radius: 0.7rem;
    background: rgba(5,18,41,0.62);
}
.workflow-panel h2, .boundary-panel h2 {
    margin: 0;
    color: #fff;
    font-family: var(--display);
    font-size: 1rem;
    letter-spacing: -0.025em;
}
.workflow-list {
    margin: 0.95rem 0 0;
    padding: 0;
    display: grid;
    gap: 0.65rem;
    list-style: none;
}
.workflow-list li { display: grid; grid-template-columns: 1.5rem minmax(0,1fr); gap: 0.55rem; align-items: start; }
.workflow-list span { width: 1.42rem; height: 1.42rem; display: inline-grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--gold); font-size: 0.55rem; font-weight: 700; }
.workflow-list p { margin: 0.05rem 0 0; color: var(--muted); font-size: 0.75rem; line-height: 1.47; }
.boundary-panel { background: linear-gradient(145deg, rgba(42,103,165,0.23), rgba(6,19,43,0.75)); }
.boundary-panel > p { margin: 0.75rem 0 0; color: var(--muted); font-size: 0.78rem; line-height: 1.56; }
.boundary-chip {
    margin-top: 0.92rem;
    padding: 0.65rem 0.7rem;
    border-left: 2px solid var(--gold);
    background: rgba(245,189,89,0.08);
    color: #e6f1fc;
    font-size: 0.72rem;
    line-height: 1.48;
}

.platform-principles {
    margin-top: 0.75rem;
    padding: 1.2rem;
    display: grid;
    grid-template-columns: minmax(15rem, 0.78fr) minmax(0, 1.22fr);
    gap: 1.3rem;
    border: 1px solid rgba(156,215,255,0.14);
    border-radius: 0.7rem;
    background: rgba(5,18,41,0.46);
}
.platform-principles h2 {
    margin: 0.52rem 0 0;
    color: #fff;
    font-family: var(--display);
    font-size: clamp(1rem, 1.7vw, 1.3rem);
    letter-spacing: -0.035em;
    line-height: 1.2;
}
.principles-list { margin: 0; padding: 0; display: grid; gap: 0.65rem; list-style: none; }
.principles-list li { display: grid; grid-template-columns: 1.65rem minmax(0, 1fr); gap: 0.65rem; }
.principles-list span { color: var(--gold); font-size: 0.62rem; font-weight: 800; letter-spacing: 0.05em; }
.principles-list p { margin: 0; color: var(--muted); font-size: 0.75rem; line-height: 1.54; }

@media (max-width: 74rem) {
    .platform-shell { grid-template-columns: 13.5rem minmax(0,1fr); }
    .system-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .workspace-context-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .role-scope__list, .operating-signal-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .workspace-orientation__header, .system-map__header, .role-journey__header, .role-journey__controls, .workflow-layout, .platform-principles, .mission-studio__controls, .relationship-evidence__controls, .capability-commitment__controls, .admissions-route__controls { grid-template-columns: 1fr; }
    .role-journey__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .relationship-evidence__stages, .capability-commitment__stages, .admissions-route__stages { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 56rem) {
    .platform-header, .demo-banner, .platform-shell { width: min(100% - 2rem, 92rem); }
    .platform-header { min-height: 4.8rem; }
    .platform-text-link { display: none; }
    .demo-banner { grid-template-columns: auto minmax(0,1fr); }
    .demo-banner__status { grid-column: 2; text-align: left; }
    .platform-shell { display: block; overflow: visible; border-radius: 0.8rem; }
    .platform-sidebar { padding: 0.85rem; border-right: 0; border-bottom: 1px solid var(--line); }
    .sidebar-section { gap: 0.4rem; }
    .role-list, .module-list { display: flex; overflow-x: auto; gap: 0.35rem; }
    .role-button, .module-button { width: max-content; min-width: max-content; }
    .security-note { display: none; }
    .workspace-header { display: grid; }
    .workspace-header__meta { justify-items: start; }
    .workspace-context-grid, .role-scope__list, .operating-signal-grid, .system-map__route-list { grid-template-columns: 1fr; }
    .system-map__nodes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .role-journey__actions { justify-content: flex-start; }
    .identity-boundary { grid-template-columns: 1fr; }
    .prototype-workboard__header { grid-template-columns: 1fr; }
    .mission-studio__header, .mission-studio__stages { grid-template-columns: 1fr; }
    .mission-studio__sample-state { width: max-content; }
    .relationship-evidence__header, .relationship-evidence__stages { grid-template-columns: 1fr; }
    .relationship-evidence__status { justify-items: start; }
    .relationship-evidence__action { grid-template-columns: 1fr; }
    .capability-commitment__header, .capability-commitment__stages { grid-template-columns: 1fr; }
    .capability-commitment__guardrails { justify-items: start; }
    .capability-commitment__action { grid-template-columns: 1fr; }
    .admissions-route__header, .admissions-route__stages { grid-template-columns: 1fr; }
    .admissions-route__status { justify-items: start; }
    .admissions-route__action { grid-template-columns: 1fr; }
}

@media (max-width: 38rem) {
    .platform-brand__lockup small { display: none; }
    .google-button { width: 2.35rem; padding: 0; }
    .google-button > span:last-child { display: none; }
    .signed-in-control__identity, .sign-out-button { display: none; }
    .demo-banner { padding: 0.7rem 0.8rem; }
    .demo-banner span:not(.demo-banner__status) { font-size: 0.68rem; }
    .platform-workspace { padding: 1rem; }
    .system-grid { grid-template-columns: 1fr; }
    .system-map__nodes { grid-template-columns: 1fr; }
    .role-journey__steps { grid-template-columns: 1fr; }
    .workspace-header h1 { font-size: clamp(1.62rem, 8vw, 2.2rem); }
    .platform-principles { padding: 1rem; }
}

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