:root {
  color-scheme: dark;
  --ink: #080d16;
  --deep: #05080d;
  --navy: #101728;
  --panel: #0b1320;
  --panel-2: #111d2b;
  --line: #20333b;
  --line-bright: #315c66;
  --cyan: #35bdc7;
  --cyan-soft: #b7dee3;
  --paper: #f5f7f8;
  --muted: #9aa8b4;
  --green: #2fca8c;
  --red: #ff7275;
  --gold: #f1c75b;
  --pink: #ff5f8f;
  --violet: #8c79ff;
  --shadow: 0 26px 80px rgba(0, 0, 0, .34);
  --font-boost: 2pt;
  font-family: Inter, "Noto Sans", "Noto Sans Devanagari", "Noto Sans SC", Arial, Helvetica, sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { min-width: 320px; overflow-x: clip; background: var(--ink); }
body { min-width: 320px; min-height: 100vh; margin: 0; overflow-x: clip; color: var(--paper); background: var(--ink); }
body::before { position: fixed; inset: 0; z-index: -2; content: ""; pointer-events: none; background: radial-gradient(circle at 52% -10%, rgba(53, 189, 199, .13), transparent 34%), radial-gradient(circle at 105% 65%, rgba(53, 189, 199, .08), transparent 28%), linear-gradient(180deg, #080d16 0%, #050910 100%); }
body::after { position: fixed; inset: 0; z-index: -1; content: ""; pointer-events: none; opacity: .13; background-image: linear-gradient(rgba(53, 189, 199, .14) 1px, transparent 1px), linear-gradient(90deg, rgba(53, 189, 199, .12) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, #000, transparent 86%); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, select { cursor: pointer; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }

.overline { margin: 0 0 7px; color: var(--cyan); font-size: calc(10px + var(--font-boost)); font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.status-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 12px rgba(47, 202, 140, .85); }
.brand { display: flex; align-items: center; gap: 11px; min-width: max-content; }
.brand-mark { display: grid; width: 118px; height: 38px; place-items: center; }
.brand-mark img { display: block; width: 118px; height: 38px; object-fit: contain; }
.brand-copy { display: grid; padding-left: 12px; border-left: 1px solid var(--line-bright); line-height: 1; }
.brand-copy b { display: none; }
.brand-copy small { color: var(--muted); font-size: calc(11px + var(--font-boost)); font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }

.access-page { display: grid; min-height: 100vh; padding: 42px 22px; place-items: center; align-content: center; }
.access-card { position: relative; width: min(620px, 100%); padding: clamp(28px, 6vw, 54px); overflow: hidden; border: 1px solid var(--line-bright); border-radius: 14px; background: linear-gradient(145deg, rgba(16, 23, 40, .97), rgba(8, 14, 23, .98)); box-shadow: var(--shadow), inset 0 1px rgba(255, 255, 255, .035); }
.access-card::before { position: absolute; inset: 0 auto auto 0; width: 100%; height: 3px; content: ""; background: linear-gradient(90deg, var(--cyan), rgba(53, 189, 199, .08) 70%); }
.access-card::after { position: absolute; right: -80px; top: -100px; width: 260px; height: 260px; border: 1px solid rgba(53, 189, 199, .13); border-radius: 50%; content: ""; box-shadow: 0 0 0 28px rgba(53, 189, 199, .025), 0 0 0 56px rgba(53, 189, 199, .018); pointer-events: none; }
.access-card--wide { width: min(760px, 100%); }
.access-brand { position: relative; z-index: 1; display: flex; margin-bottom: 38px; }
.access-card h1 { position: relative; z-index: 1; max-width: 540px; margin: 0; font-size: calc(clamp(30px, 6vw, 48px) + var(--font-boost)); line-height: 1.02; letter-spacing: -.045em; }
.access-lead { position: relative; z-index: 1; max-width: 580px; margin: 16px 0 31px; color: var(--muted); font-size: calc(15px + var(--font-boost)); line-height: 1.55; }
.access-form, .security-form { position: relative; z-index: 1; display: grid; gap: 19px; }
.form-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.form-grid__full { grid-column: 1 / -1; }
label { display: grid; gap: 8px; color: #c6d0d5; font-size: calc(11px + var(--font-boost)); font-weight: 800; letter-spacing: .035em; }
input, select, textarea { width: 100%; border: 1px solid #2a525c; border-radius: 7px; background: #080e17; color: var(--paper); transition: border-color .18s ease, box-shadow .18s ease, background .18s ease; }
input, select { min-height: 46px; padding: 0 13px; }
textarea { padding: 12px 13px; resize: vertical; }
input::placeholder, textarea::placeholder { color: #687783; }
input:focus, select:focus, textarea:focus { border-color: var(--cyan); background: #0b151f; box-shadow: 0 0 0 3px rgba(53, 189, 199, .09); outline: 0; }
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus { -webkit-text-fill-color: var(--paper); -webkit-box-shadow: 0 0 0 1000px #080e17 inset; caret-color: var(--paper); transition: background-color 9999s ease-out 0s; }
.password-wrap { position: relative; display: block; }
.password-wrap input { padding-right: 92px; }
.password-wrap button { position: absolute; right: 8px; top: 8px; min-height: 30px; border: 0; background: transparent; color: var(--cyan); font-size: calc(10px + var(--font-boost)); font-weight: 900; text-transform: uppercase; }
.button { display: inline-flex; min-height: 42px; padding: 0 16px; align-items: center; justify-content: center; gap: 13px; border: 1px solid var(--line-bright); border-radius: 7px; background: var(--panel-2); color: #fff; font-size: calc(12px + var(--font-boost)); font-weight: 900; letter-spacing: .02em; }
.button:hover { border-color: var(--cyan); background: #122633; }
.button--primary { border-color: var(--cyan); background: var(--cyan); color: #061014; }
.button--primary:hover { background: #62d2da; color: #061014; }
.button--full { width: 100%; min-height: 50px; }
.button--small { min-height: 36px; padding: 0 12px; font-size: calc(10px + var(--font-boost)); text-transform: uppercase; }
.form-actions { margin-top: 5px; }
.access-meta { display: flex; justify-content: space-between; gap: 16px; margin-top: 27px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: calc(10px + var(--font-boost)); font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.access-meta span { display: flex; align-items: center; gap: 8px; }
.login-divider { display: flex; align-items: center; gap: 12px; color: #65727e; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .12em; }
.login-divider::before, .login-divider::after { height: 1px; flex: 1; content: ""; background: var(--line); }
.button--passkey { border-color: #8c79ff; background: #201b43; color: #e1dcff; }
.button--passkey:hover { border-color: #bbaeff; background: #302963; }
.passkey-client-status { min-height: 16px; margin: -8px 0 0; color: var(--cyan-soft); font-size: calc(9px + var(--font-boost)); line-height: 1.4; text-align: center; }
.passkey-client-status[data-state="error"] { color: #ffc4c6; }
.access-foot { margin: 22px 0 0; color: #65727e; font-size: calc(9px + var(--font-boost)); font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.security-note { position: relative; z-index: 1; display: flex; align-items: center; gap: 13px; margin-top: 25px; padding: 14px; border: 1px solid #20404a; border-radius: 8px; background: rgba(11, 32, 40, .45); }
.security-note div { display: grid; gap: 3px; }
.security-note b { font-size: calc(11px + var(--font-boost)); }
.security-note small { color: var(--muted); font-size: calc(10px + var(--font-boost)); }
.flash { position: relative; z-index: 4; margin: 0 0 20px; padding: 12px 14px; border: 1px solid #294852; border-radius: 7px; background: #111d2b; color: #dbe1e7; font-size: calc(12px + var(--font-boost)); font-weight: 700; }
.flash--error { border-color: #56282b; background: #24171d; color: #ffd0d1; }
.flash--success { border-color: #164b39; background: #0f2b24; color: #a1f6d3; }

.cockpit-shell { width: min(1840px, 100%); min-height: 100vh; margin: auto; padding: 0 18px; }
html[data-ui-scale] .cockpit-shell { width: min(var(--ui-shell-max), var(--ui-shell-width)); max-width: none; min-height: var(--ui-shell-height); zoom: var(--ui-scale-factor); }
.display-controller { position: fixed; top: 50%; right: 11px; z-index: 40; display: grid; width: 58px; padding: 7px 5px; gap: 5px; border: 1px solid rgba(53, 189, 199, .42); border-radius: 10px; background: rgba(7, 15, 25, .94); box-shadow: 0 16px 36px rgba(0, 0, 0, .4), inset 0 1px rgba(255, 255, 255, .04); transform: translateY(-50%); backdrop-filter: blur(16px); }
.display-controller > span { color: var(--cyan); font-size: calc(5px + var(--font-boost)); font-weight: 900; letter-spacing: .09em; text-align: center; }
.display-controller > div { display: grid; gap: 3px; }
.display-controller button { display: grid; width: 100%; height: 28px; padding: 0; border: 1px solid #294852; border-radius: 6px; place-items: center; background: #101b29; color: var(--paper); font-size: calc(14px + var(--font-boost)); font-weight: 900; }
.display-controller button:hover { border-color: var(--cyan); background: #12303a; color: var(--cyan-soft); }
.display-controller button:disabled { opacity: .32; cursor: not-allowed; }
.display-controller output { display: grid; min-height: 24px; place-items: center; color: var(--cyan-soft); font-size: calc(7px + var(--font-boost)); font-weight: 900; }
.display-controller__custom { position: relative; display: block; color: var(--muted); }
.display-controller__custom input { width: 100%; min-height: 28px; padding: 0 16px 0 4px; border-radius: 6px; font-size: calc(7px + var(--font-boost)); font-weight: 900; text-align: center; appearance: textfield; }
.display-controller__custom input::-webkit-inner-spin-button, .display-controller__custom input::-webkit-outer-spin-button { margin: 0; appearance: none; }
.display-controller__custom span { position: absolute; top: 50%; right: 5px; font-size: calc(6px + var(--font-boost)); font-weight: 900; transform: translateY(-50%); pointer-events: none; }
.display-controller .display-controller__reset { height: 24px; color: var(--muted); font-size: calc(11px + var(--font-boost)); }
.display-controller > small { overflow: hidden; color: var(--muted); font-size: calc(5px + var(--font-boost)); font-weight: 800; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
.topbar { position: sticky; top: 0; z-index: 20; display: grid; grid-template-columns: 1fr auto 1fr; min-height: 72px; padding: 11px 8px; align-items: center; gap: 22px; border-bottom: 1px solid var(--line); background: rgba(8, 13, 22, .94); backdrop-filter: blur(18px); }
.topbar-center { display: flex; align-items: center; gap: 12px; color: var(--muted); font-size: calc(10px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.topbar-actions { display: flex; min-width: 0; justify-self: end; align-items: center; gap: 11px; }
.language-switcher { display: flex; min-width: 0; align-items: center; gap: 7px; }
.language-switcher > span { color: #687783; font-size: calc(6px + var(--font-boost)); font-weight: 900; letter-spacing: .1em; }
.language-switcher > div { display: flex; padding: 3px; gap: 2px; border: 1px solid var(--line); border-radius: 7px; background: #080e17; }
.language-switcher button { display: grid; min-width: 28px; height: 26px; padding: 0 5px; border: 0; border-radius: 5px; place-items: center; background: transparent; color: #778692; font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .025em; }
.language-switcher button:hover { background: #13232e; color: var(--cyan-soft); }
.language-switcher button.is-active { background: var(--cyan); color: #061014; box-shadow: 0 0 14px rgba(53, 189, 199, .2); }
.language-switcher--access { position: relative; z-index: 2; width: 100%; margin: -19px 0 28px; justify-content: flex-start; }
.language-switcher--access > span { font-size: calc(7px + var(--font-boost)); }
.language-switcher--access button { min-width: 35px; height: 30px; font-size: calc(8px + var(--font-boost)); }
.online { display: inline-flex; align-items: center; gap: 7px; color: #a1f6d3; }
.online[data-state="syncing"] { color: var(--cyan-soft); }
.online[data-state="warning"] { color: #ffda76; }
.env-chip, .live-badge, .build-chip { display: inline-flex; align-items: center; gap: 8px; padding: 5px 8px; border-radius: 99px; font-size: calc(9px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.env-chip--production { background: #164b39; color: #a1f6d3; }
.env-chip--development { background: #493914; color: #ffda76; }
.crew-menu { position: relative; display: flex; justify-self: end; align-items: center; gap: 9px; }
.crew-avatar { display: block; width: 34px; height: 34px; border: 1px solid var(--cyan); border-radius: 7px; background: #17343a; object-fit: cover; }
.crew-menu > span:nth-child(2) { display: grid; gap: 2px; min-width: 96px; }
.crew-menu b { font-size: calc(11px + var(--font-boost)); }
.crew-menu small { color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.crew-menu details { position: relative; }
.crew-menu summary { padding: 8px; color: var(--muted); cursor: pointer; list-style: none; }
.crew-menu details nav { position: absolute; top: calc(100% + 10px); right: 0; display: grid; width: 190px; padding: 8px; border: 1px solid var(--line-bright); border-radius: 8px; background: #0b1320; box-shadow: var(--shadow); }
.crew-menu nav a, .crew-menu nav button { display: block; width: 100%; padding: 10px; border: 0; border-radius: 5px; background: transparent; color: #dbe1e7; text-align: left; font-size: calc(11px + var(--font-boost)); }
.crew-menu nav a:hover, .crew-menu nav button:hover { background: #111d2b; color: var(--cyan); }
.system-update { position: sticky; top: 72px; z-index: 18; display: flex; margin: 0 8px; padding: 13px 14px; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid #7c631e; border-radius: 0 0 9px 9px; background: rgba(36, 29, 16, .97); box-shadow: 0 16px 40px rgba(0, 0, 0, .25); backdrop-filter: blur(14px); }
.system-update[hidden] { display: none; }
.system-update b { font-size: calc(11px + var(--font-boost)); }
.system-update p { margin: 3px 0 0; color: #d3c496; font-size: calc(9px + var(--font-boost)); line-height: 1.4; }
.role-preview-banner { position: sticky; top: 72px; z-index: 19; display: flex; margin: 0 8px; padding: 13px 14px; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #8c79ff; border-radius: 0 0 9px 9px; background: rgba(32, 27, 67, .97); box-shadow: 0 16px 40px rgba(0, 0, 0, .3); }
.role-preview-banner > div { display: grid; gap: 3px; }
.role-preview-banner span { color: #bbaeff; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .13em; }
.role-preview-banner b { font-size: calc(12px + var(--font-boost)); }
.role-preview-banner small { color: #c3bddc; font-size: calc(9px + var(--font-boost)); line-height: 1.4; }
.role-preview-banner form { flex: 0 0 auto; }
.role-preview-stop { color: #cfc7ff !important; }

.dashboard { padding: 22px 0 0; }
.dashboard > .flash { margin: 0 8px 18px; }
.welcome-strip { position: relative; display: flex; min-height: 118px; margin: 0 8px 18px; padding: 20px 22px; overflow: hidden; align-items: center; justify-content: space-between; gap: 30px; border: 1px solid var(--line); border-radius: 12px; background: linear-gradient(100deg, rgba(16, 23, 40, .93), rgba(11, 19, 32, .77)); }
.welcome-strip::after { position: absolute; right: 10%; bottom: -55px; width: 420px; height: 90px; border: 2px solid rgba(53, 189, 199, .17); border-radius: 50%; content: ""; transform: rotate(-8deg); box-shadow: 0 0 0 22px rgba(53, 189, 199, .022), 0 0 0 44px rgba(53, 189, 199, .017); }
.welcome-strip h1 { margin: 0; font-size: calc(clamp(27px, 3vw, 42px) + var(--font-boost)); line-height: 1; letter-spacing: -.04em; }
.welcome-strip p:last-child { margin: 10px 0 0; color: var(--muted); font-size: calc(12px + var(--font-boost)); }
.technical-missions { margin: 0 8px 18px; overflow: hidden; border: 1px solid rgba(140, 121, 255, .48); border-radius: 12px; background: radial-gradient(circle at 10% 0, rgba(140, 121, 255, .14), transparent 28%), linear-gradient(125deg, rgba(24, 24, 55, .97), rgba(9, 17, 29, .98)); box-shadow: 0 18px 50px rgba(0, 0, 0, .2); }
.technical-missions__head { display: flex; padding: 18px 20px; align-items: center; justify-content: space-between; gap: 28px; border-bottom: 1px solid rgba(140, 121, 255, .24); }
.technical-missions__head h2 { margin: 0; font-size: calc(19px + var(--font-boost)); }
.technical-missions__head p:last-child { margin: 6px 0 0; color: var(--muted); font-size: calc(9px + var(--font-boost)); line-height: 1.5; }
.technical-missions__head-meta { display: flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.technical-missions__head-meta span, .technical-missions__head-meta i { padding: 7px 10px; border-radius: 99px; background: #33305a; color: #d7d0ff; font-size: calc(8px + var(--font-boost)); font-style: normal; font-weight: 900; letter-spacing: .05em; }
.technical-missions__head-meta i { border: 1px solid rgba(53, 189, 199, .32); background: rgba(8, 27, 34, .8); color: var(--cyan-soft); }
.technical-missions__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.technical-mission-card { min-width: 0; border-bottom: 1px solid rgba(140, 121, 255, .22); }
.technical-mission-card:nth-child(odd) { border-right: 1px solid rgba(140, 121, 255, .22); }
.technical-mission-card[open] { grid-column: 1 / -1; border-right: 0; }
.technical-mission-card summary { display: grid; min-height: 220px; padding: 20px; grid-template-columns: 48px minmax(0, 1fr); gap: 15px; list-style: none; cursor: pointer; transition: background .18s ease; }
.technical-mission-card summary::-webkit-details-marker { display: none; }
.technical-mission-card summary:hover { background: rgba(140, 121, 255, .055); }
.technical-mission-card[open] summary { background: rgba(140, 121, 255, .07); }
.technical-mission-card__number { color: #bbaeff; font-size: calc(23px + var(--font-boost)); font-weight: 900; line-height: 1; }
.technical-mission-card__summary { display: grid; min-width: 0; gap: 13px; }
.technical-mission-card__title { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.technical-mission-card__title span { color: #bbaeff; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .12em; }
.technical-mission-card__title h3 { margin: 4px 0 0; font-size: calc(16px + var(--font-boost)); }
.technical-mission-card__title > i { padding: 7px 9px; border-radius: 6px; background: rgba(140, 121, 255, .18); color: #d8d2ff; font-size: calc(10px + var(--font-boost)); font-style: normal; font-weight: 900; }
.technical-mission-card__summary > p { margin: 0; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.55; }
.technical-mission-progress { height: 5px; overflow: hidden; border-radius: 99px; background: #222542; }
.technical-mission-progress i { display: block; width: var(--mission-progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--violet), var(--cyan)); }
.technical-mission-card__footer { display: flex; align-items: end; justify-content: space-between; gap: 15px; }
.technical-mission-owners { display: grid; gap: 6px; }
.technical-mission-owners > small { color: #7f8c9a; font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .12em; }
.technical-mission-owners > div { display: flex; flex-wrap: wrap; gap: 8px; }
.technical-mission-owner { display: inline-flex; align-items: center; gap: 7px; color: #dce3e8; font-size: calc(9px + var(--font-boost)); }
.technical-mission-owner__avatar, .technical-mission-owner > i { width: 34px; height: 34px; border: 1px solid var(--cyan); border-radius: 8px; object-fit: cover; }
.technical-mission-owner > i { display: grid; max-width: 68px; padding: 3px; place-items: center; overflow: hidden; background: #0a1321; color: var(--cyan-soft); font-size: calc(7px + var(--font-boost)); font-style: normal; }
.technical-mission-owner em { padding: 3px 5px; border-radius: 99px; background: rgba(241, 199, 91, .12); color: var(--gold); font-size: calc(6px + var(--font-boost)); font-style: normal; font-weight: 900; }
.technical-mission-card__signals { display: flex; max-width: 190px; flex-wrap: wrap; justify-content: flex-end; gap: 5px; text-align: right; }
.technical-mission-card__signals span, .technical-mission-card__signals i, .technical-mission-card__signals b { color: #7f8c9a; font-size: calc(7px + var(--font-boost)); font-style: normal; font-weight: 900; letter-spacing: .04em; }
.technical-mission-card__signals i { color: var(--gold); }
.technical-mission-card__signals b { width: 100%; color: var(--cyan); }
.technical-mission-card--active .technical-mission-card__title span { color: var(--cyan); }
.technical-mission-card--blocked .technical-mission-card__title span { color: var(--red); }
.technical-mission-card--review .technical-mission-card__title span { color: var(--gold); }
.technical-mission-card--done .technical-mission-card__title span { color: var(--green); }
.technical-mission-body { grid-column: 1 / -1; padding: 0 20px 22px; }
.technical-mission-facts { display: grid; margin-bottom: 13px; grid-template-columns: 1.5fr .5fr; gap: 8px; }
.technical-mission-facts article { padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: rgba(7, 14, 23, .72); }
.technical-mission-facts span, .mission-comms > header span { color: var(--cyan); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .1em; }
.technical-mission-facts p { margin: 5px 0 0; color: #d0d9df; font-size: calc(9px + var(--font-boost)); line-height: 1.5; }
.mission-comms { overflow: hidden; border: 1px solid var(--line-bright); border-radius: 9px; background: rgba(8, 14, 23, .84); }
.mission-comms > header { display: flex; padding: 13px 14px; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid var(--line); }
.mission-comms > header h4 { margin: 4px 0 0; font-size: calc(12px + var(--font-boost)); }
.mission-comms > header small { max-width: 280px; color: var(--muted); font-size: calc(8px + var(--font-boost)); line-height: 1.45; text-align: right; }
.mission-comms__list { display: grid; max-height: 330px; padding: 6px 14px; overflow: auto; }
.mission-comms__entry { display: grid; padding: 10px 0; grid-template-columns: auto minmax(0, 1fr); gap: 9px; border-bottom: 1px solid rgba(32, 51, 59, .72); }
.mission-comms__entry:last-child { border-bottom: 0; }
.mission-comms__avatar, .mission-comms__fallback { width: 34px; height: 34px; border: 1px solid var(--cyan); border-radius: 8px; object-fit: cover; }
.mission-comms__fallback { display: grid; padding: 2px; place-items: center; overflow: hidden; color: var(--cyan-soft); font-size: calc(7px + var(--font-boost)); }
.mission-comms__entry header { display: flex; align-items: center; gap: 7px; }
.mission-comms__entry header b { font-size: calc(9px + var(--font-boost)); }
.mission-comms__entry header span { padding: 3px 6px; border-radius: 99px; background: rgba(53, 189, 199, .12); color: var(--cyan-soft); font-size: calc(7px + var(--font-boost)); font-weight: 900; }
.mission-comms__entry--question header span { background: rgba(241, 199, 91, .13); color: var(--gold); }
.mission-comms__entry--decision header span { background: rgba(140, 121, 255, .16); color: #c7bcff; }
.mission-comms__entry header time { margin-left: auto; color: #657481; font-size: calc(7px + var(--font-boost)); }
.mission-comms__entry p { margin: 6px 0 0; color: #d5dde2; font-size: calc(9px + var(--font-boost)); line-height: 1.5; }
.mission-comms__entry footer { display: flex; margin-top: 8px; align-items: center; justify-content: space-between; gap: 8px; }
.mission-comms__entry footer i, .mission-comms__entry footer button { border: 0; background: transparent; color: var(--gold); font-size: calc(7px + var(--font-boost)); font-style: normal; font-weight: 900; }
.mission-comms__entry.is-resolved { opacity: .68; }
.mission-comms__entry.is-resolved footer i { color: var(--green); }
.mission-comms__form { display: grid; padding: 13px 14px; gap: 9px; border-top: 1px solid var(--line); background: rgba(15, 25, 40, .78); }
.mission-comms__controls, .mission-comms__actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mission-comms__controls label { width: min(230px, 100%); }
.mission-comms__controls > span { color: var(--gold); font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.mission-comms__controls small { color: var(--muted); font-size: calc(8px + var(--font-boost)); }
.mission-comms__broadcast { display: flex; width: auto; align-items: center; grid-template-columns: auto 1fr; }
.mission-comms__broadcast input { width: 17px; min-height: 17px; }
.mission-admin { margin-top: 10px; border: 1px solid rgba(140, 121, 255, .34); border-radius: 8px; background: rgba(25, 23, 54, .58); }
.mission-admin > summary { min-height: 0; padding: 11px 13px; color: #c7bcff; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .1em; }
.mission-admin form { display: grid; padding: 0 13px 13px; grid-template-columns: .7fr .5fr 1.7fr .8fr auto; align-items: end; gap: 8px; }
.chat-mission-link { display: inline-flex; margin-top: 7px; color: var(--cyan); font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.flight-score { position: relative; z-index: 1; display: grid; grid-template-columns: auto auto; min-width: 170px; align-items: end; gap: 1px 12px; }
.flight-score > span { align-self: center; color: var(--muted); font-size: calc(9px + var(--font-boost)); font-weight: 900; text-transform: uppercase; }
.flight-score strong { grid-row: 1 / span 2; grid-column: 2; color: var(--cyan); font-size: calc(43px + var(--font-boost)); line-height: .85; }
.flight-score strong small { font-size: calc(17px + var(--font-boost)); }
.flight-score i { width: 94px; height: 4px; border-radius: 10px; background: linear-gradient(90deg, var(--cyan) var(--score), #1b2a35 var(--score)); }

.cockpit-grid { display: grid; grid-template-columns: minmax(230px, .75fr) minmax(500px, 1.75fr) minmax(250px, .85fr); gap: 10px; }
.console { position: relative; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(16, 23, 40, .93); box-shadow: inset 0 1px rgba(255, 255, 255, .02); }
.console::before, .news-panel::before, .chat-panel::before { position: absolute; left: 14px; top: -1px; width: 55px; height: 2px; content: ""; background: var(--cyan); }
.console--center { border-color: rgba(53, 189, 199, .58); background: radial-gradient(circle at 86% 6%, rgba(53, 189, 199, .11), transparent 25%), linear-gradient(145deg, rgba(16, 28, 43, .98), rgba(10, 18, 31, .98)); box-shadow: 0 0 0 1px rgba(53, 189, 199, .08), 0 22px 55px rgba(0, 0, 0, .24), inset 0 1px rgba(255, 255, 255, .035); }
.console--center::before { width: 116px; height: 3px; background: linear-gradient(90deg, var(--cyan), #78e2d0 58%, transparent); box-shadow: 0 0 18px rgba(53, 189, 199, .34); }
.console-head { display: flex; min-height: 54px; align-items: center; gap: 11px; margin-bottom: 10px; }
.console-head > span { color: var(--cyan); font-size: calc(24px + var(--font-boost)); font-weight: 900; }
.wing-instrument { position: relative; display: block; width: 46px; height: 46px; flex: 0 0 46px; overflow: hidden; border: 1px solid #2a5b65; border-radius: 50%; background: radial-gradient(circle, rgba(53, 189, 199, .12), transparent 57%), #091520; box-shadow: inset 0 0 0 5px rgba(53, 189, 199, .025), 0 0 18px rgba(53, 189, 199, .08); }
.wing-instrument::before, .wing-instrument::after, .wing-instrument i, .wing-instrument b, .wing-instrument em { position: absolute; display: block; content: ""; }
.wing-instrument--training::before { left: 7px; right: 7px; top: 22px; height: 1px; background: linear-gradient(90deg, transparent, rgba(53, 189, 199, .65) 25%, rgba(53, 189, 199, .65) 75%, transparent); }
.wing-instrument--training::after { left: 14px; top: 10px; width: 16px; height: 22px; border: 1px solid rgba(53, 189, 199, .34); border-top-color: transparent; border-radius: 50%; transform: rotate(18deg); }
.wing-instrument--training i { left: 18px; top: 17px; width: 10px; height: 10px; border: 1px solid var(--cyan); border-top: 0; border-radius: 0 0 8px 8px; transform: rotate(-12deg); box-shadow: 0 3px 9px rgba(53, 189, 199, .22); }
.wing-instrument--training b { left: 22px; bottom: 5px; width: 2px; height: 11px; background: linear-gradient(var(--cyan), transparent); transform: perspective(12px) rotateX(-24deg); }
.wing-instrument--training em { left: 10px; top: 12px; width: 3px; height: 3px; border-radius: 50%; background: var(--cyan); box-shadow: 24px 19px 0 rgba(53, 189, 199, .58), 5px 25px 0 rgba(53, 189, 199, .3), 0 0 8px var(--cyan); }
.wing-instrument--fleet::before { left: 9px; top: 9px; width: 26px; height: 26px; border: 1px solid rgba(53, 189, 199, .28); border-left-color: transparent; border-bottom-color: transparent; border-radius: 50%; transform: rotate(18deg); }
.wing-instrument--fleet::after { left: 14px; top: 14px; width: 16px; height: 16px; border: 1px solid rgba(53, 189, 199, .46); border-left-color: transparent; border-bottom-color: transparent; border-radius: 50%; transform: rotate(18deg); }
.wing-instrument--fleet i { left: 21px; top: 21px; width: 4px; height: 4px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 11px var(--cyan); }
.wing-instrument--fleet b { left: 22px; top: 9px; width: 1px; height: 28px; background: linear-gradient(transparent, rgba(53, 189, 199, .55), transparent); transform: rotate(55deg); }
.wing-instrument--fleet em { left: 8px; top: 29px; width: 5px; height: 2px; border-radius: 50%; background: var(--cyan); transform: rotate(-24deg); box-shadow: 8px 4px 0 rgba(53, 189, 199, .72), 17px 5px 0 rgba(53, 189, 199, .42); }
.console h2, .lower-deck h2 { margin: 0; font-size: calc(16px + var(--font-boost)); letter-spacing: -.02em; }
.module-card { position: relative; display: grid; grid-template-columns: 38px 1fr auto; min-height: 93px; padding: 12px; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.module-card + .module-card { margin-top: 8px; }
.module-card:hover { transform: translateY(-2px); border-color: var(--cyan); background: #0d1824; }
.module-card > span { display: grid; width: 36px; height: 36px; border: 1px solid currentColor; border-radius: 6px; place-items: center; color: var(--cyan); font-size: calc(9px + var(--font-boost)); font-weight: 900; }
.module-card b { display: block; margin-bottom: 5px; font-size: calc(11px + var(--font-boost)); }
.module-card p { margin: 0; color: var(--muted); font-size: calc(9px + var(--font-boost)); line-height: 1.4; }
.module-card > i { color: var(--muted); font-style: normal; }
.module-card--pink > span { color: var(--pink); }
.module-card--violet > span { color: var(--violet); }
.is-locked { opacity: .39; cursor: not-allowed; filter: grayscale(.3); }
.is-locked:hover { transform: none; border-color: var(--line); }

.mission-title { display: flex; min-height: 63px; padding-bottom: 10px; justify-content: space-between; align-items: center; border-bottom: 1px solid rgba(53, 189, 199, .18); }
.mission-title h2 { font-size: calc(25px + var(--font-boost)); letter-spacing: -.035em; }
.radar { position: relative; display: block; width: 44px; height: 44px; border: 1px solid #2a5b65; border-radius: 50%; background: repeating-radial-gradient(circle, transparent 0 7px, rgba(53, 189, 199, .14) 8px 9px); }
.radar::before, .radar::after { position: absolute; left: 50%; top: 5px; width: 1px; height: 34px; content: ""; background: rgba(53, 189, 199, .2); }
.radar::after { transform: rotate(90deg); }
.radar i { position: absolute; left: 50%; top: 50%; width: 18px; height: 1px; background: var(--cyan); transform-origin: left; transform: rotate(-35deg); box-shadow: 0 0 10px var(--cyan); }
.metric-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin: 11px 0 9px; }
.metric-row article { display: grid; min-height: 76px; padding: 10px; border: 1px solid rgba(53, 189, 199, .22); border-radius: 8px; background: rgba(7, 16, 28, .82); }
.metric-row span { color: var(--muted); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.metric-row strong { color: var(--paper); font-size: calc(25px + var(--font-boost)); line-height: 1; }
.metric-row small { color: var(--cyan); font-size: calc(8px + var(--font-boost)); }
.hero-module { position: relative; display: grid; grid-template-columns: minmax(115px, .7fr) minmax(230px, 1.3fr); min-height: 250px; padding: 22px; align-items: center; gap: 23px; overflow: hidden; border: 1px solid #2e626c; border-radius: 10px; background: radial-gradient(circle at 20% 50%, rgba(53, 189, 199, .18), transparent 31%), linear-gradient(125deg, #0b2028, #0b1320 67%); }
.hero-module::after { position: absolute; right: -25px; bottom: -65px; width: 260px; height: 105px; border: 2px solid rgba(53, 189, 199, .13); border-radius: 50%; content: ""; transform: rotate(-15deg); }
.hero-module__visual { display: grid; place-items: center; }
.pulse-ring { display: grid; width: 108px; height: 108px; border: 1px solid rgba(53, 189, 199, .45); border-radius: 50%; place-items: center; box-shadow: 0 0 0 17px rgba(53, 189, 199, .05), 0 0 0 34px rgba(53, 189, 199, .025), 0 0 35px rgba(53, 189, 199, .16); }
.pulse-ring i { display: grid; width: 70px; height: 70px; border: 1px solid var(--cyan); border-radius: 12px; place-items: center; background: #0b2028; color: var(--cyan-soft); font-size: calc(23px + var(--font-boost)); font-style: normal; font-weight: 900; }
.hero-module h3 { margin: 0; font-size: calc(clamp(23px, 2.3vw, 36px) + var(--font-boost)); line-height: 1; letter-spacing: -.045em; }
.hero-module p:not(.overline) { max-width: 450px; margin: 12px 0 18px; color: var(--muted); font-size: calc(11px + var(--font-boost)); line-height: 1.5; }
.hero-module--project { grid-template-columns: minmax(180px, .9fr) minmax(250px, 1.1fr); }
.hero-project-preview { position: relative; z-index: 1; display: block; height: 210px; overflow: hidden; border: 1px solid rgba(53, 189, 199, .48); border-radius: 9px; background: #050811; }
.hero-project-preview img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; transition: transform .3s ease; }
.hero-project-preview:hover img { transform: scale(1.025); }
.hero-project-preview > span { position: absolute; right: 9px; bottom: 9px; padding: 5px 7px; border: 1px solid rgba(53, 189, 199, .45); border-radius: 999px; background: rgba(5, 8, 17, .9); color: var(--cyan-soft); font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .09em; }
.hero-project-copy { position: relative; z-index: 1; min-width: 0; }
.hero-project-kicker { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.hero-project-kicker > span { color: var(--cyan); font-size: calc(11px + var(--font-boost)); font-weight: 900; }
.hero-project-meta { display: flex; margin: -6px 0 13px; align-items: center; flex-wrap: wrap; gap: 8px; }
.hero-project-meta b { color: #b7c3cc; font-size: calc(8px + var(--font-boost)); line-height: 1.35; }
.hero-project-crew { display: flex; min-width: 0; margin: 0 0 14px; align-items: center; flex-wrap: wrap; gap: 12px; }
.hero-project-owner { display: flex; align-items: center; flex: 0 0 auto; gap: 9px; }
.hero-project-owner__avatar { width: 36px; height: 36px; border: 1px solid var(--cyan); border-radius: 8px; object-fit: cover; background: #050811; }
.hero-project-owner > span { display: grid; gap: 2px; }
.hero-project-owner small { color: var(--muted); font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.hero-project-owner b { font-size: calc(9px + var(--font-boost)); }
.mission-assignees { display: grid; min-width: 0; gap: 4px; }
.mission-assignees > small { color: var(--muted); font-size: calc(6px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.mission-assignees > div { display: flex; min-width: 0; align-items: center; flex-wrap: wrap; gap: 5px; }
.mission-assignee { display: inline-flex; min-width: 0; padding: 3px 6px 3px 3px; align-items: center; gap: 4px; border: 1px solid rgba(53, 189, 199, .24); border-radius: 7px; background: rgba(5, 13, 22, .76); }
.mission-assignee__avatar { width: 24px; height: 24px; flex: 0 0 auto; border: 1px solid rgba(53, 189, 199, .72); border-radius: 6px; object-fit: cover; background: #050811; }
.mission-assignee b { max-width: 74px; overflow: hidden; font-size: calc(7px + var(--font-boost)); text-overflow: ellipsis; white-space: nowrap; }
.mission-assignee-more { display: grid; width: 25px; height: 25px; border: 1px solid rgba(53, 189, 199, .3); border-radius: 7px; place-items: center; background: #10212a; color: var(--cyan-soft); font-size: calc(7px + var(--font-boost)); font-style: normal; font-weight: 900; }
.mission-assignees--hero { padding-left: 12px; border-left: 1px solid rgba(53, 189, 199, .2); }
.mission-expiry-warning { margin: 0 0 13px; padding: 8px 10px; border: 1px solid #7c631e; border-radius: 7px; background: #241d10; color: #ffda76; font-size: calc(7px + var(--font-boost)); font-weight: 900; line-height: 1.45; letter-spacing: .05em; }
.mission-queue-panel { margin-top: 10px; padding: 13px; border: 1px solid #294852; border-radius: 10px; background: rgba(8, 14, 23, .68); }
.mission-queue-panel > header { display: flex; margin-bottom: 10px; align-items: center; justify-content: space-between; gap: 14px; }
.mission-queue-panel > header h3 { margin: 0; font-size: calc(15px + var(--font-boost)); letter-spacing: -.025em; }
.mission-queue-panel > header > span { color: var(--cyan); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.mission-queue-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.mission-queue-card { position: relative; display: grid; min-width: 0; padding: 11px; gap: 8px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; transition: border-color .18s ease, transform .18s ease; }
.mission-queue-card:hover { border-color: var(--cyan); transform: translateY(-1px); }
.mission-queue-card.is-personal { border-color: rgba(53, 189, 199, .55); background: #0b2028; }
.mission-queue-card.is-expired { border-color: #7c631e; }
.mission-queue-card > header { display: flex; align-items: center; justify-content: space-between; gap: 9px; }
.mission-queue-card > header span, .mission-queue-card > header i { font-size: calc(6px + var(--font-boost)); font-style: normal; font-weight: 900; letter-spacing: .07em; }
.mission-queue-card > header span { color: var(--gold); }
.mission-queue-card > header i { color: var(--cyan-soft); text-align: right; }
.mission-queue-card h4 { margin: 0; overflow-wrap: anywhere; font-size: calc(11px + var(--font-boost)); line-height: 1.15; }
.mission-queue-card > p { min-height: 26px; margin: 0; color: var(--muted); font-size: calc(8px + var(--font-boost)); line-height: 1.4; }
.mission-queue-card__meta { display: grid; grid-template-columns: minmax(80px, auto) minmax(0, 1fr) auto; align-items: end; gap: 7px; }
.mission-queue-owner { display: grid; min-width: 0; grid-template-columns: 26px minmax(0, 1fr); align-items: center; gap: 7px; }
.mission-queue-avatar { width: 26px; height: 26px; border: 1px solid var(--cyan); border-radius: 6px; object-fit: cover; background: #050811; }
.mission-owner-open { display: grid; width: 26px; height: 26px; border: 1px dashed #49606c; border-radius: 6px; place-items: center; color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.mission-queue-owner > b { overflow: hidden; font-size: calc(8px + var(--font-boost)); text-overflow: ellipsis; white-space: nowrap; }
.mission-queue-card__meta em { padding: 4px 5px; border-radius: 99px; background: #164b39; color: #a1f6d3; font-size: calc(5px + var(--font-boost)); font-style: normal; font-weight: 900; letter-spacing: .05em; }
.mission-assignees--queue > small { font-size: calc(5px + var(--font-boost)); }
.mission-assignees--queue .mission-assignee { padding: 2px 4px 2px 2px; gap: 3px; }
.mission-assignees--queue .mission-assignee__avatar { width: 19px; height: 19px; border-radius: 5px; }
.mission-assignees--queue .mission-assignee b { max-width: 54px; font-size: calc(6px + var(--font-boost)); }
.mission-assignees--queue .mission-assignee-more { width: 20px; height: 20px; font-size: calc(6px + var(--font-boost)); }
.mission-queue-progress { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; }
.mission-queue-progress > i { display: block; height: 4px; overflow: hidden; border-radius: 99px; background: #1b2a35; }
.mission-queue-progress > i::after { display: block; width: var(--mission-progress); height: 100%; border-radius: inherit; content: ""; background: linear-gradient(90deg, var(--cyan), #78e2d0); }
.mission-queue-progress b { color: var(--cyan); font-size: calc(7px + var(--font-boost)); }
.mission-card-warning { color: #ffda76; font-size: calc(6px + var(--font-boost)); font-weight: 900; letter-spacing: .07em; }
.mission-queue-more { display: block; margin-top: 10px; color: var(--cyan); font-size: calc(8px + var(--font-boost)); font-weight: 900; text-align: right; }
.launch-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin-top: 9px; }
.launch-card { display: grid; grid-template-columns: 5px 1fr auto; min-height: 68px; padding: 10px; align-items: center; gap: 9px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; }
.launch-card:hover { border-color: var(--cyan); }
.launch-card > i { width: 3px; height: 34px; border-radius: 5px; background: var(--cyan); }
.launch-card div { display: grid; gap: 4px; }
.launch-card b { font-size: calc(9px + var(--font-boost)); }
.launch-card small { color: var(--muted); font-size: calc(8px + var(--font-boost)); line-height: 1.3; }
.launch-card > span { color: var(--cyan); }

.fleet-card { display: grid; grid-template-columns: 40px 1fr auto; min-height: 70px; padding: 10px; align-items: center; gap: 9px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; }
.fleet-card + .fleet-card { margin-top: 8px; }
.fleet-card:hover { border-color: var(--cyan); }
.fleet-card > span { display: grid; min-height: 30px; padding: 0 5px; border-radius: 5px; place-items: center; background: #17343a; color: var(--cyan-soft); font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.fleet-card div { display: grid; min-width: 0; gap: 4px; }
.fleet-card b { overflow: hidden; font-size: calc(10px + var(--font-boost)); text-overflow: ellipsis; white-space: nowrap; }
.fleet-card small { overflow: hidden; color: var(--muted); font-size: calc(8px + var(--font-boost)); text-overflow: ellipsis; white-space: nowrap; }
.fleet-card > i { color: var(--cyan); font-style: normal; }
.fleet-card--green > span { background: #164b39; color: #a1f6d3; }
.fleet-card--pink > span { background: #56282b; color: #ffc4c6; }
.fleet-card--violet > span { background: #333947; color: #dbe1e7; }
.crew-admin-card { display: grid; gap: 5px; margin-top: 12px; padding: 14px; border: 1px solid #7c631e; border-radius: 8px; background: #241d10; }
.crew-admin-card span { color: var(--gold); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .1em; }
.crew-admin-card b { font-size: calc(11px + var(--font-boost)); }
.crew-admin-card small { color: #d3c496; font-size: calc(8px + var(--font-boost)); line-height: 1.4; }

.lower-deck { display: grid; grid-template-columns: .78fr 1.22fr; gap: 10px; margin-top: 10px; }
.news-panel, .chat-panel { position: relative; min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: rgba(16, 23, 40, .93); }
.chat-panel { border-color: rgba(53, 189, 199, .62); background: radial-gradient(circle at 92% 0%, rgba(53, 189, 199, .13), transparent 28%), linear-gradient(145deg, rgba(14, 27, 42, .98), rgba(9, 17, 29, .98)); box-shadow: 0 0 0 1px rgba(53, 189, 199, .07), 0 20px 50px rgba(0, 0, 0, .23); }
.chat-panel::before { width: 128px; height: 3px; background: linear-gradient(90deg, var(--cyan), #78e2d0 62%, transparent); box-shadow: 0 0 18px rgba(53, 189, 199, .3); }
.panel-title { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-bottom: 12px; }
.panel-title > span:not(.live-badge) { color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.chat-panel .panel-title { padding-bottom: 12px; border-bottom: 1px solid rgba(53, 189, 199, .18); }
.chat-panel .panel-title h2 { font-size: calc(21px + var(--font-boost)); letter-spacing: -.03em; }
.chat-panel .panel-title > span { padding: 5px 8px; border: 1px solid rgba(53, 189, 199, .28); border-radius: 99px; background: rgba(11, 32, 40, .8); color: var(--cyan-soft); font-weight: 900; white-space: nowrap; }
.live-badge { background: #164b39; color: #a1f6d3; }
.ticker-list { display: grid; }
.ticker-item { display: grid; grid-template-columns: auto 1fr auto; padding: 10px 4px; align-items: start; gap: 11px; border-top: 1px solid var(--line); }
.ticker-item:first-child { border-top: 0; }
.ticker-item b { font-size: calc(10px + var(--font-boost)); }
.ticker-item p { margin: 3px 0 0; color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.ticker-item time { color: #65727e; font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.signal { display: block; width: 6px; height: 25px; border-radius: 3px; background: var(--cyan); }
.signal--pink { background: var(--pink); }
.signal--green { background: var(--green); }
.chat-scope-note { display: flex; margin: -2px 0 10px; padding: 9px 11px; align-items: center; gap: 8px; border: 1px solid rgba(53, 189, 199, .34); border-radius: 7px; background: rgba(11, 32, 40, .72); color: #b7c5ce; font-size: calc(8px + var(--font-boost)); font-weight: 800; }
.chat-list { display: grid; max-height: 390px; padding-right: 4px; overflow: auto; overscroll-behavior: contain; scrollbar-color: #315c66 transparent; }
.chat-message { display: grid; grid-template-columns: auto minmax(0, 1fr); padding: 10px 4px; gap: 10px; border-top: 1px solid var(--line); }
.chat-message:first-child { border-top: 0; }
.chat-message__fallback, .chat-message__avatar { display: grid; height: 34px; border: 1px solid #2a5b65; border-radius: 7px; place-items: center; background: #17343a; color: var(--cyan-soft); font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.chat-message__fallback { width: auto; min-width: 34px; max-width: 92px; padding: 0 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.chat-message__avatar { width: 34px; }
.chat-message__avatar { object-fit: cover; }
.chat-message > div { min-width: 0; padding: 9px 11px; border: 1px solid transparent; border-radius: 8px; background: #0b1320; }
.chat-message header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.chat-message header b { display: flex; min-width: 0; align-items: center; gap: 7px; font-size: calc(10px + var(--font-boost)); }
.chat-message header b small { padding: 3px 5px; border-radius: 99px; background: #1a2735; color: var(--muted); font-size: calc(6px + var(--font-boost)); letter-spacing: .06em; }
.chat-message time { flex: 0 0 auto; color: #65727e; font-size: calc(8px + var(--font-boost)); font-weight: 400; }
.chat-message p { margin: 6px 0 0; overflow-wrap: anywhere; color: #c6d0d5; font-size: calc(10px + var(--font-boost)); line-height: 1.5; }
.chat-message > div > i { display: inline-flex; margin-top: 7px; padding: 3px 6px; border-radius: 99px; background: #493914; color: #ffda76; font-size: calc(6px + var(--font-boost)); font-style: normal; font-weight: 900; letter-spacing: .08em; }
.chat-message.is-mentioned > div { border-color: #7c631e; background: linear-gradient(110deg, #241d10, #0b1320); }
.chat-message.is-own > .chat-message__fallback, .chat-message.is-own > .chat-message__avatar { border-color: #8c79ff; background: #201b43; color: #d4cdff; }
.chat-mention { display: inline-block; padding: 1px 4px; border-radius: 4px; background: rgba(53, 189, 199, .13); color: var(--cyan-soft); font-weight: 900; }
.empty-state { padding: 18px; border: 1px dashed #294852; border-radius: 7px; color: var(--muted); text-align: center; font-size: calc(10px + var(--font-boost)); }
.chat-form { display: grid; gap: 10px; margin-top: 14px; padding: 13px; border: 1px solid rgba(53, 189, 199, .24); border-radius: 10px; background: rgba(5, 13, 22, .62); }
.mention-picker { display: grid; gap: 7px; }
.mention-picker > span { color: var(--muted); font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .09em; }
.mention-picker > div { display: flex; padding-bottom: 2px; gap: 6px; overflow-x: auto; scrollbar-width: thin; }
.mention-picker button { display: inline-flex; min-height: 30px; padding: 0 9px; flex: 0 0 auto; align-items: center; gap: 6px; border: 1px solid #315c66; border-radius: 99px; background: #111d2b; color: var(--cyan-soft); font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.mention-picker button:hover { border-color: var(--cyan); background: #17343a; }
.mention-picker button small { padding-left: 6px; border-left: 1px solid #315c66; color: var(--muted); font-size: calc(6px + var(--font-boost)); }
.chat-compose { position: relative; }
.chat-form textarea { min-height: 100px; border-color: rgba(53, 189, 199, .55); background: #07111d; font-size: calc(10px + var(--font-boost)); line-height: 1.5; box-shadow: inset 0 0 24px rgba(53, 189, 199, .025); }
.chat-form textarea:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(53, 189, 199, .12), inset 0 0 28px rgba(53, 189, 199, .035); }
.mention-autocomplete { position: absolute; z-index: 20; right: 8px; bottom: calc(100% + 6px); left: 8px; display: grid; max-height: 260px; padding: 6px; gap: 3px; overflow-y: auto; border: 1px solid #3c717b; border-radius: 9px; background: #07111d; box-shadow: 0 18px 44px rgba(0, 0, 0, .48); }
.mention-autocomplete[hidden] { display: none; }
.mention-autocomplete button { display: flex; min-height: 42px; padding: 7px 10px; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid transparent; border-radius: 6px; background: transparent; color: var(--text); text-align: left; }
.mention-autocomplete button:hover, .mention-autocomplete button[data-active="true"] { border-color: #315c66; background: #112630; }
.mention-autocomplete b { color: var(--cyan-soft); font-size: calc(9px + var(--font-boost)); }
.mention-autocomplete small { color: var(--muted); font-size: calc(7px + var(--font-boost)); text-align: right; }
.chat-form__actions { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; }
.chat-form__actions > small { color: var(--muted); font-size: calc(8px + var(--font-boost)); }
.chat-form__actions > span { color: #65727e; font-size: calc(7px + var(--font-boost)); text-align: right; }
.chat-form__actions .button { border-color: var(--cyan); background: var(--cyan); color: #061014; box-shadow: 0 8px 20px rgba(53, 189, 199, .14); }
.chat-form__actions .button:hover { background: #62d2da; color: #061014; }
.cockpit-footer { display: flex; justify-content: space-between; gap: 20px; padding: 18px 8px; color: #65727e; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .09em; }

.page-view { width: 100%; max-width: 1520px; min-width: 0; margin: auto; padding: 40px clamp(14px, 2.2vw, 28px) 60px; }
.page-view--narrow { width: min(680px, calc(100% - 20px)); }
.back-link { display: inline-block; margin-bottom: 28px; color: var(--cyan); font-size: calc(10px + var(--font-boost)); font-weight: 900; text-transform: uppercase; }
.page-heading { margin-bottom: 24px; }
.page-heading h1 { max-width: 100%; margin: 0; overflow-wrap: anywhere; font-size: calc(clamp(32px, 5vw, 56px) + var(--font-boost)); line-height: 1; letter-spacing: -.05em; }
.page-heading > p:last-child { max-width: 650px; margin: 12px 0 0; color: var(--muted); font-size: calc(13px + var(--font-boost)); line-height: 1.5; }
.crew-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 390px), 1fr)); gap: 14px; }
.crew-card { display: grid; align-content: start; gap: 16px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--navy); }
.crew-card, .crew-card > *, .crew-card__head, .crew-card__head > div { min-width: 0; }
.crew-card--master { border-color: #7c631e; background: linear-gradient(145deg, #17181b, #101728); }
.crew-card--new { border-style: dashed; }
.crew-card__head { display: grid; grid-template-columns: 58px 1fr auto; align-items: center; gap: 13px; }
.crew-card__head > span { display: grid; width: 58px; height: 58px; border: 1px solid var(--cyan); border-radius: 10px; place-items: center; background: #17343a; color: var(--cyan-soft); font-weight: 900; }
.card-avatar { display: block; width: 64px; height: 64px; border: 1px solid var(--cyan); border-radius: 10px; background: #08111c; object-fit: cover; }
.crew-card__head:has(.card-avatar) { grid-template-columns: 64px 1fr auto; }
.crew-card__head > div { display: grid; min-width: 0; gap: 3px; }
.crew-card__head b { font-size: calc(15px + var(--font-boost)); }
.crew-card__head small { overflow: hidden; color: var(--muted); font-size: calc(11px + var(--font-boost)); text-overflow: ellipsis; white-space: nowrap; }
.crew-card__head i { padding: 5px 8px; border-radius: 99px; background: #333947; color: #dbe1e7; font-size: calc(8px + var(--font-boost)); font-style: normal; font-weight: 900; }
.crew-card__head i.is-active { background: #164b39; color: #a1f6d3; }
.crew-card > p { margin: 0; color: var(--muted); font-size: calc(12px + var(--font-boost)); line-height: 1.55; }
.crew-card > label:not(.toggle):not(.password-reset-toggle) { gap: 9px; font-size: calc(12px + var(--font-boost)); }
.crew-card > label input, .crew-card > label select { min-height: 52px; font-size: calc(12px + var(--font-boost)); }
.control-master { max-width: 560px; }
.crew-card--master .card-avatar { width: 76px; height: 76px; }
.crew-card--master .crew-card__head:has(.card-avatar) { grid-template-columns: 76px 1fr auto; }
.card-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.button--danger { border-color: #73383d; background: #2b171d; color: #ffc4c6; }
.button--danger:hover { border-color: #d46970; background: #3a1c22; }
.toggle { display: flex; align-items: center; gap: 8px; }
.toggle input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.toggle span { position: relative; width: 34px; height: 18px; border: 1px solid #315c66; border-radius: 99px; background: #111d2b; }
.toggle span::after { position: absolute; left: 3px; top: 3px; width: 10px; height: 10px; border-radius: 50%; content: ""; background: var(--muted); transition: transform .18s ease; }
.toggle input:checked + span { border-color: var(--green); background: #164b39; }
.toggle input:checked + span::after { background: #a1f6d3; transform: translateX(16px); }
.password-reset-toggle { display: flex; align-items: center; gap: 9px; cursor: pointer; }
.password-reset-toggle input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.password-reset-toggle > span { display: grid; width: 20px; height: 20px; border: 1px solid #315c66; border-radius: 5px; place-items: center; background: #080e17; }
.password-reset-toggle > span::after { color: #061014; font-size: calc(13px + var(--font-boost)); font-weight: 900; content: "✓"; opacity: 0; }
.password-reset-toggle input:checked + span { border-color: var(--cyan); background: var(--cyan); }
.password-reset-toggle input:checked + span::after { opacity: 1; }
.password-reset-toggle b { font-size: calc(11px + var(--font-boost)); }
.password-reset-field[hidden] { display: none; }
.password-reset-field small { color: var(--muted); font-size: calc(9px + var(--font-boost)); font-weight: 400; line-height: 1.45; }
.info-banner { min-width: 0; margin-top: 14px; padding: 16px; border: 1px solid #2a525c; border-radius: 8px; background: #0b2028; }
.info-banner b { font-size: calc(11px + var(--font-boost)); }
.info-banner p { margin: 5px 0 0; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.5; }
.info-banner--live { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.info-banner--live > div { min-width: 0; }
.live-sync { display: inline-flex; flex: 0 0 auto; padding: 7px 10px; align-items: center; gap: 8px; border: 1px solid rgba(47, 202, 140, .32); border-radius: 99px; background: rgba(22, 75, 57, .72); color: #a1f6d3; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .07em; }
.live-sync[data-state="syncing"] { border-color: rgba(53, 189, 199, .45); background: #17343a; color: var(--cyan-soft); }
.live-sync[data-state="warning"] { border-color: rgba(241, 199, 91, .4); background: #493914; color: #ffda76; }
.staged-import { display: flex; margin-bottom: 14px; padding: 18px; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid #7c631e; border-radius: 10px; background: linear-gradient(120deg, #241d10, #101728); }
.staged-import b { font-size: calc(15px + var(--font-boost)); }
.staged-import p:last-child { margin: 6px 0 0; color: #d3c496; font-size: calc(10px + var(--font-boost)); line-height: 1.5; }
.staged-import form { flex: 0 0 auto; }
.role-preview-control { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr); margin-bottom: 18px; padding: 18px; align-items: end; gap: 24px; border: 1px solid rgba(140, 121, 255, .45); border-radius: 10px; background: linear-gradient(120deg, rgba(35, 29, 73, .9), rgba(16, 23, 40, .96)); }
.role-preview-control > div { display: grid; gap: 5px; }
.role-preview-control > div > b { font-size: calc(14px + var(--font-boost)); }
.role-preview-control > div > p:last-child { margin: 0; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.5; }
.role-preview-control form { display: grid; grid-template-columns: minmax(150px, 1fr) auto; align-items: end; gap: 10px; }
.generated-link { display: grid; grid-template-columns: minmax(0, .75fr) minmax(360px, 1.25fr); margin-bottom: 18px; padding: 18px; align-items: end; gap: 24px; border: 1px solid #2fca8c; border-radius: 10px; background: linear-gradient(120deg, rgba(15, 43, 36, .95), rgba(16, 23, 40, .96)); }
.generated-link > div { display: grid; gap: 5px; }
.generated-link > div > b { font-size: calc(14px + var(--font-boost)); }
.generated-link > div > p:last-child { margin: 0; color: #a8c8bd; font-size: calc(10px + var(--font-boost)); }
.copy-link { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.copy-link input { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: calc(9px + var(--font-boost)); }
.button--access { border-color: #2fca8c; color: #a1f6d3; }
.section-heading { margin: 36px 0 16px; }
.section-heading h2 { margin: 0; font-size: calc(27px + var(--font-boost)); letter-spacing: -.035em; }
.section-heading > p:last-child { margin: 8px 0 0; color: var(--muted); font-size: calc(12px + var(--font-boost)); line-height: 1.5; }
.roster-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 14px; margin-bottom: 22px; }
.roster-card { display: grid; min-height: 168px; gap: 16px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--navy); }
.roster-card, .roster-card > * { min-width: 0; }
.roster-card > p { margin: 0; color: #c6d0d5; font-size: calc(12.5px + var(--font-boost)); line-height: 1.5; }
.roster-card > small { overflow-wrap: anywhere; color: var(--muted); font-size: calc(10.5px + var(--font-boost)); }
.internal-accounts { margin-top: 28px; border: 1px solid var(--line); border-radius: 10px; background: rgba(16, 23, 40, .72); }
.internal-accounts summary { display: flex; padding: 16px 18px; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; list-style: none; }
.internal-accounts summary::-webkit-details-marker { display: none; }
.internal-accounts summary span { display: grid; gap: 4px; }
.internal-accounts summary b { font-size: calc(12px + var(--font-boost)); }
.internal-accounts summary small { color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.internal-accounts summary i { color: var(--cyan); font-size: calc(9px + var(--font-boost)); font-style: normal; font-weight: 900; text-transform: uppercase; }
.internal-accounts[open] summary { border-bottom: 1px solid var(--line); }
.internal-accounts[open] summary i::before { content: "Schließen"; }
.internal-accounts[open] summary i { font-size: 0; }
.internal-accounts[open] summary i::before { font-size: calc(9px + var(--font-boost)); }
.internal-accounts__body { padding: 18px; }
.internal-accounts__body > p { margin: 0 0 14px; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.5; }
.security-form { padding: 22px; border: 1px solid var(--line); border-radius: 10px; background: var(--navy); }
.passkey-panel { display: grid; gap: 16px; margin-top: 18px; padding: 22px; border: 1px solid rgba(140, 121, 255, .45); border-radius: 10px; background: linear-gradient(135deg, rgba(32, 27, 67, .9), var(--navy)); }
.passkey-panel__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 22px; }
.passkey-panel__head h2 { margin: 0; font-size: calc(22px + var(--font-boost)); letter-spacing: -.03em; }
.passkey-panel__head p:last-child { margin: 8px 0 0; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.5; }
.passkey-status { flex: 0 0 auto; padding: 6px 9px; border-radius: 99px; background: #164b39; color: #a1f6d3; font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.passkey-status.is-pending { background: #493914; color: #ffda76; }
.passkey-deadline { display: grid; gap: 4px; padding: 13px 14px; border: 1px solid #7c631e; border-radius: 8px; background: #241d10; }
.passkey-deadline b { color: #ffda76; font-size: calc(11px + var(--font-boost)); }
.passkey-deadline small { color: #d3c496; font-size: calc(9px + var(--font-boost)); line-height: 1.45; }
.passkey-list { display: grid; gap: 8px; }
.passkey-list article { display: flex; padding: 12px 13px; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; }
.passkey-list article > div { display: grid; gap: 4px; }
.passkey-list b { font-size: calc(11px + var(--font-boost)); }
.passkey-list small { color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.passkey-actions { display: flex; align-items: center; gap: 16px; }
.passkey-actions p { margin: 0; color: var(--cyan-soft); font-size: calc(9px + var(--font-boost)); }
.passkey-actions p[data-state="error"] { color: #ffc4c6; }
.passkey-reminder { display: flex; margin: 0 8px 18px; padding: 14px 18px; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid #7c631e; border-radius: 10px; background: linear-gradient(110deg, #241d10, rgba(16, 23, 40, .94)); }
.passkey-reminder > div { display: grid; gap: 4px; }
.passkey-reminder span { color: var(--gold); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .12em; }
.passkey-reminder b { font-size: calc(12px + var(--font-boost)); }
.passkey-reminder p { margin: 0; color: #d3c496; font-size: calc(9px + var(--font-boost)); }
.profile-form { margin-bottom: 10px; }
.security-form label small { color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.identity-scope { display: grid; grid-template-columns: auto 1fr; margin-bottom: 14px; padding: 16px 18px; align-items: center; gap: 16px; border: 1px solid #7c631e; border-radius: 10px; background: linear-gradient(120deg, #241d10, #101728); }
.identity-scope > span { padding: 6px 8px; border-radius: 99px; background: #493914; color: #ffda76; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .09em; }
.identity-scope b { font-size: calc(13px + var(--font-boost)); }
.identity-scope p { margin: 5px 0 0; color: #d3c496; font-size: calc(10px + var(--font-boost)); line-height: 1.45; }
.profile-settings-grid { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); align-items: start; gap: 12px; }
.profile-settings-grid > * { min-width: 0; }
.profile-photo-card, .profile-details-card { display: grid; gap: 18px; padding: clamp(18px, 3vw, 28px); border: 1px solid var(--line); border-radius: 12px; background: var(--navy); box-shadow: inset 0 1px rgba(255, 255, 255, .025); }
.profile-section-title h2 { margin: 0; font-size: calc(22px + var(--font-boost)); letter-spacing: -.03em; }
.profile-photo-stage { position: relative; overflow: hidden; aspect-ratio: 1; border: 1px solid #2a5b65; border-radius: 12px; background: #080e17; }
.profile-photo__image { display: block; width: 100%; height: 100%; object-fit: cover; }
.profile-photo-stage > span { position: absolute; right: 12px; bottom: 12px; padding: 5px 8px; border: 1px solid rgba(53, 189, 199, .5); border-radius: 99px; background: rgba(5, 8, 17, .86); color: var(--cyan-soft); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .09em; }
.avatar-upload-form { display: grid; gap: 12px; }
.file-control { display: grid; padding: 14px; gap: 10px; border: 1px dashed #315c66; border-radius: 8px; background: #0b1320; cursor: pointer; }
.file-control__picker { display: flex; min-width: 0; align-items: center; gap: 12px; }
.file-control__picker b { flex: 0 0 auto; padding: 8px 11px; border: 1px solid #315c66; border-radius: 6px; background: #111d2b; color: var(--paper); font-size: calc(9px + var(--font-boost)); }
.file-control__picker i { min-width: 0; overflow: hidden; color: var(--muted); font-size: calc(9px + var(--font-boost)); font-style: normal; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.file-control:focus-within { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(53, 189, 199, .12); }
.file-control__native { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; border: 0; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.file-control small { color: var(--muted); font-size: calc(9px + var(--font-boost)); font-weight: 400; line-height: 1.45; }
.avatar-reset-form { display: flex; }
.profile-privacy { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 11px; padding: 14px; border: 1px solid #2a525c; border-radius: 8px; background: #0b2028; }
.profile-privacy .status-dot { margin-top: 4px; }
.profile-privacy b { font-size: calc(10px + var(--font-boost)); }
.profile-privacy p { margin: 4px 0 0; color: var(--muted); font-size: calc(9px + var(--font-boost)); line-height: 1.5; }
.profile-role-line { display: flex; padding: 14px; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid #2a525c; border-radius: 8px; background: #0b2028; }
.profile-language-setting { padding: 14px; border: 1px solid rgba(53, 189, 199, .45); border-radius: 9px; background: #0b2028; }
.profile-language-setting > span { color: var(--cyan-soft); }
.profile-role-line span { padding: 5px 8px; border-radius: 99px; background: #164b39; color: #a1f6d3; font-size: calc(9px + var(--font-boost)); font-weight: 900; }
.profile-role-line small { color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.profile-details-card label small { color: var(--muted); font-size: calc(9px + var(--font-boost)); font-weight: 400; }
.preset-preview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.preset-preview figure { display: grid; grid-template-columns: 54px 1fr; margin: 0; padding: 8px; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; }
.preset-preview img { display: block; width: 54px; height: 54px; border-radius: 7px; object-fit: cover; }
.preset-preview figcaption { color: var(--cyan-soft); font-size: calc(10px + var(--font-boost)); font-weight: 900; }

.project-hub-hero { position: relative; display: flex; min-height: 230px; padding: clamp(24px, 5vw, 48px); overflow: hidden; align-items: end; justify-content: space-between; gap: 40px; border: 1px solid #2e626c; border-radius: 14px; background: radial-gradient(circle at 85% 25%, rgba(53, 189, 199, .16), transparent 28%), linear-gradient(120deg, #101728, #0b2028); }
.project-hub-hero::after { position: absolute; right: -80px; top: -160px; width: 390px; height: 390px; border: 1px solid rgba(53, 189, 199, .16); border-radius: 50%; content: ""; box-shadow: 0 0 0 38px rgba(53, 189, 199, .025), 0 0 0 76px rgba(53, 189, 199, .016); }
.project-hub-hero > * { position: relative; z-index: 1; }
.project-hub-hero h1 { margin: 0; font-size: calc(clamp(44px, 7vw, 92px) + var(--font-boost)); line-height: .92; letter-spacing: -.065em; }
.project-hub-hero > div:first-child > p:last-child { max-width: 720px; margin: 18px 0 0; color: var(--muted); font-size: calc(13px + var(--font-boost)); line-height: 1.55; }
.project-hub-stats { display: grid; grid-template-columns: repeat(3, 92px); gap: 8px; }
.project-hub-stats article { display: grid; min-height: 92px; padding: 13px; align-content: end; border: 1px solid rgba(53, 189, 199, .3); border-radius: 9px; background: rgba(8, 14, 23, .68); }
.project-hub-stats strong { color: var(--cyan); font-size: calc(31px + var(--font-boost)); }
.project-hub-stats span { color: var(--muted); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.project-access-note { display: flex; margin: 14px 0; padding: 14px 16px; align-items: flex-start; gap: 12px; border: 1px solid #2a525c; border-radius: 9px; background: #0b2028; }
.project-access-note .status-dot { margin-top: 4px; }
.project-access-note b { font-size: calc(11px + var(--font-boost)); }
.project-access-note p { margin: 4px 0 0; color: var(--muted); font-size: calc(9px + var(--font-boost)); line-height: 1.5; }
.project-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 390px), 1fr)); gap: 12px; }
.project-card { display: grid; min-height: 360px; padding: 22px; align-content: start; gap: 15px; border: 1px solid var(--line); border-radius: 12px; background: linear-gradient(145deg, var(--navy), #0b1320); transition: transform .18s ease, border-color .18s ease; }
.project-card:hover { transform: translateY(-3px); border-color: var(--cyan); }
.project-card__top { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.project-card__top > span { color: var(--cyan); font-size: calc(9px + var(--font-boost)); font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.project-card__top > div { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.project-card__top em { padding: 5px 7px; border: 1px solid #7c631e; border-radius: 99px; background: #241d10; color: #ffda76; font-size: calc(6px + var(--font-boost)); font-style: normal; font-weight: 900; letter-spacing: .06em; }
.project-card__visual { position: relative; min-height: 152px; margin: 0; overflow: hidden; border: 1px solid #2a525c; border-radius: 9px; background: #050811; }
.project-card__visual img { display: block; width: 100%; height: 170px; object-fit: cover; object-position: top center; opacity: .82; transition: opacity .18s ease, transform .24s ease; }
.project-card:hover .project-card__visual img { opacity: 1; transform: scale(1.015); }
.project-card__visual figcaption { position: absolute; right: 0; bottom: 0; left: 0; display: flex; padding: 9px 10px; align-items: center; justify-content: space-between; gap: 10px; background: linear-gradient(180deg, transparent, rgba(5, 8, 17, .96)); }
.project-card__visual figcaption span { color: var(--cyan); font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.project-card__visual figcaption b { color: #a1f6d3; font-size: calc(6px + var(--font-boost)); letter-spacing: .06em; }
.project-status { display: inline-flex; padding: 6px 9px; border-radius: 99px; background: #333947; color: #dbe1e7; font-size: calc(8px + var(--font-boost)); font-style: normal; font-weight: 900; letter-spacing: .06em; }
.project-status--active { background: #164b39; color: #a1f6d3; }
.project-status--review { background: #493914; color: #ffda76; }
.project-status--paused { background: #56282b; color: #ffc4c6; }
.project-status--done { background: #17343a; color: var(--cyan-soft); }
.project-card h2 { margin: 0; font-size: calc(25px + var(--font-boost)); line-height: 1.05; letter-spacing: -.04em; }
.project-card > p { min-height: 58px; margin: 0; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.55; }
.project-phase { display: grid; gap: 5px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: #080e17; }
.project-phase span, .project-progress span { color: var(--muted); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.project-phase b { font-size: calc(10px + var(--font-boost)); }
.project-progress { display: grid; gap: 8px; }
.project-progress > div { display: flex; align-items: center; justify-content: space-between; }
.project-progress b { color: var(--cyan); font-size: calc(11px + var(--font-boost)); }
.project-progress > i { display: block; height: 6px; overflow: hidden; border-radius: 99px; background: #1b2a35; }
.project-progress > i::after { display: block; width: var(--project-progress); height: 100%; border-radius: inherit; content: ""; background: linear-gradient(90deg, var(--cyan), #78e2d0); }
.project-card footer { display: flex; margin-top: auto; padding-top: 14px; align-items: center; justify-content: space-between; gap: 18px; border-top: 1px solid var(--line); }
.project-card footer span { color: var(--muted); font-size: calc(8px + var(--font-boost)); }
.project-card footer b { color: var(--cyan); font-size: calc(9px + var(--font-boost)); }
.project-admin { margin-top: 22px; border: 1px solid #7c631e; border-radius: 12px; background: rgba(36, 29, 16, .62); }
.project-admin > summary { display: flex; padding: 18px 20px; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; list-style: none; }
.project-admin > summary::-webkit-details-marker { display: none; }
.project-admin > summary > span { display: grid; gap: 4px; }
.project-admin > summary b { font-size: calc(13px + var(--font-boost)); }
.project-admin > summary small { color: #d3c496; font-size: calc(9px + var(--font-boost)); }
.project-admin > summary i { color: var(--gold); font-size: calc(9px + var(--font-boost)); font-style: normal; font-weight: 900; text-transform: uppercase; }
.project-admin[open] > summary { border-bottom: 1px solid #5e4c20; }
.project-admin__body { padding: 20px; }
.project-form { display: grid; gap: 20px; }
.project-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.project-form fieldset { margin: 0; padding: 16px; border: 1px solid var(--line); border-radius: 9px; background: #101728; }
.project-form legend { padding: 0 8px; color: var(--cyan); font-size: calc(9px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.prototype-lab, .prototype-lab * { min-width: 0; }
.prototype-lab { overflow-wrap: anywhere; }
.prototype-lab__control { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .62fr); margin-top: 18px; padding: 22px; align-items: center; gap: 24px; border: 1px solid rgba(140, 121, 255, .48); border-radius: 12px; background: linear-gradient(120deg, rgba(32, 27, 67, .92), var(--navy)); box-shadow: inset 0 1px rgba(255, 255, 255, .025); }
.prototype-lab__control h2 { margin: 0; font-size: calc(25px + var(--font-boost)); letter-spacing: -.035em; }
.prototype-lab__control p:not(.overline) { margin: 9px 0 0; color: #bbb7d2; font-size: calc(10px + var(--font-boost)); line-height: 1.55; }
.prototype-lab__control form { display: grid; gap: 14px; justify-items: start; }
.prototype-lab__control .toggle { color: #ded9f2; }
.prototype-lab__section { margin-top: 30px; }
.prototype-lab__release-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 14px; }
.prototype-lab__release { display: grid; grid-template-rows: auto auto auto 1fr auto; gap: 15px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: linear-gradient(145deg, var(--navy), #0b1320); box-shadow: 0 16px 34px rgba(0, 0, 0, .16); }
/* Keep the current review mission dominant; historical releases stay available
   without competing with the action that the Master needs to take now. */
.prototype-lab__release:has(.prototype-lab__release-status--review) { grid-column: 1 / -1; border-color: rgba(53, 189, 199, .48); background: linear-gradient(125deg, rgba(9, 37, 45, .94), var(--navy) 45%, #0b1320); box-shadow: 0 20px 46px rgba(0, 0, 0, .22), inset 0 2px var(--cyan); }
.prototype-lab__release:has(.prototype-lab__release-status--archived) { padding: 16px; gap: 10px; border-color: rgba(106, 118, 130, .2); background: #0b111b; box-shadow: none; filter: saturate(.45); opacity: .57; transition: opacity .18s ease, filter .18s ease, border-color .18s ease; }
.prototype-lab__release:has(.prototype-lab__release-status--archived):hover { border-color: rgba(130, 145, 158, .38); filter: saturate(.72); opacity: .84; }
.prototype-lab__release:has(.prototype-lab__release-status--archived) .prototype-lab__release-copy p { display: none; }
.prototype-lab__release:has(.prototype-lab__release-status--archived) .prototype-lab__release-copy h3 { font-size: calc(15px + var(--font-boost)); }
.prototype-lab__release:has(.prototype-lab__release-status--archived) .prototype-lab__release-facts { padding-block: 9px; }
.prototype-lab__release-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 12px; }
.prototype-lab__release-status, .prototype-lab__grant-count { display: inline-flex; min-height: 26px; padding: 5px 9px; align-items: center; border-radius: 999px; font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.prototype-lab__release-status--draft { border: 1px solid #7c631e; background: #241d10; color: #ffda76; }
.prototype-lab__release-status--review { border: 1px solid #2d6c5a; background: #0f2b24; color: #a1f6d3; }
.prototype-lab__release-status--archived { border: 1px solid #48515e; background: #252b34; color: #c3cad1; }
.prototype-lab__grant-count { border: 1px solid #315c66; background: #0b2028; color: var(--cyan-soft); }
.prototype-lab__release-copy { display: grid; gap: 8px; }
.prototype-lab__release-copy h3 { margin: 0; font-size: calc(18px + var(--font-boost)); letter-spacing: -.03em; }
.prototype-lab__release-copy p { margin: 0; color: var(--muted); font-size: calc(9px + var(--font-boost)); line-height: 1.55; }
.prototype-lab__release-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: 13px 0; border-block: 1px solid var(--line); }
.prototype-lab__release-facts > div { display: grid; gap: 5px; padding: 0 12px; }
.prototype-lab__release-facts > div:first-child { padding-left: 0; }
.prototype-lab__release-facts > div + div { border-left: 1px solid var(--line); }
.prototype-lab__release-facts dt { color: #71808b; font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.prototype-lab__release-facts dd { margin: 0; color: #e4e8eb; font-size: calc(9px + var(--font-boost)); font-weight: 800; overflow-wrap: anywhere; }
.prototype-lab__release-note { align-self: start; margin: 0; padding: 11px 12px; border-left: 3px solid var(--cyan); background: #0b2028; color: #b7c6cf; font-size: calc(8px + var(--font-boost)); line-height: 1.5; }
.prototype-lab__release-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; gap: 7px; list-style: none; }
.prototype-lab__release-step { display: grid; min-height: 66px; padding: 10px; align-content: start; gap: 6px; border: 1px solid var(--line); border-radius: 9px; background: #080e17; color: #71808b; }
.prototype-lab__release-step span { display: grid; width: 22px; height: 22px; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: calc(7px + var(--font-boost)); font-weight: 900; }
.prototype-lab__release-step b { font-size: calc(7px + var(--font-boost)); line-height: 1.35; }
.prototype-lab__release-step--done { border-color: #275b50; background: #0c241e; color: #8fe9c6; }
.prototype-lab__release-step--next { border-color: #8c711f; background: #241d10; color: #ffda76; box-shadow: inset 0 2px #c89d22; }
.prototype-lab__release:has(.prototype-lab__release-step:nth-child(3).prototype-lab__release-step--next) .prototype-lab__grant-count { border-color: #8c711f; background: #2a210f; color: #ffda76; }
.prototype-lab__release-steps:has(.prototype-lab__release-step:nth-child(3).prototype-lab__release-step--next)::after { display: flex; min-height: 38px; grid-column: 1 / -1; padding: 9px 12px; align-items: center; justify-content: space-between; border: 1px solid rgba(140, 113, 31, .72); border-radius: 8px; background: linear-gradient(90deg, #2a210f, rgba(36, 29, 16, .46)); color: #ffda76; content: "NEXT STEP  ·  ASSIGN THIS RELEASE TO A REVIEWER BELOW  ↓"; font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .06em; }
.prototype-lab__assign-cta { width: fit-content; min-height: 42px; justify-self: start; border-color: #8c711f; background: #ffce4f; color: #081019; box-shadow: 0 10px 24px rgba(200, 157, 34, .16); }
.prototype-lab__assign-cta:hover { border-color: #ffda76; background: #ffda76; color: #050811; }
.prototype-lab__archive-history { margin-top: 18px; overflow: hidden; border: 1px solid rgba(106, 118, 130, .28); border-radius: 12px; background: rgba(8, 14, 23, .62); }
.prototype-lab__archive-history > summary { display: flex; min-height: 58px; padding: 14px 18px; align-items: center; justify-content: space-between; gap: 16px; color: #aeb8bf; cursor: pointer; list-style: none; }
.prototype-lab__archive-history > summary::-webkit-details-marker { display: none; }
.prototype-lab__archive-history > summary::after { color: var(--cyan); content: "OPEN"; font-size: calc(7px + var(--font-boost)); font-weight: 900; letter-spacing: .09em; }
.prototype-lab__archive-history[open] > summary { border-bottom: 1px solid rgba(106, 118, 130, .24); }
.prototype-lab__archive-history[open] > summary::after { content: "CLOSE"; }
.prototype-lab__archive-history > summary span { display: grid; gap: 3px; }
.prototype-lab__archive-history > summary b { font-size: calc(12px + var(--font-boost)); }
.prototype-lab__archive-history > summary small { color: #77858e; font-size: calc(8px + var(--font-boost)); }
.prototype-lab__archive-history .prototype-lab__release-grid { padding: 16px; }
.prototype-lab__release-actions { display: flex; align-self: end; flex-wrap: wrap; gap: 9px; padding-top: 2px; }
.prototype-lab__release-action { display: grid; margin: 0; gap: 7px; }
.prototype-lab__release-action small { max-width: 440px; color: var(--muted); font-size: calc(7px + var(--font-boost)); line-height: 1.45; }
.prototype-lab__danger-zone { margin-top: 1px; border-top: 1px solid var(--line); }
.prototype-lab__danger-zone > summary { width: fit-content; padding: 11px 0 2px; color: #8f9ca5; cursor: pointer; font-size: calc(8px + var(--font-boost)); font-weight: 800; }
.prototype-lab__danger-zone > div { display: grid; margin-top: 9px; padding: 12px; gap: 10px; border: 1px solid #6b3035; border-radius: 9px; background: #241216; }
.prototype-lab__danger-zone p { margin: 0; color: #e7b8bd; font-size: calc(8px + var(--font-boost)); line-height: 1.45; }
.prototype-lab__danger-zone form { margin: 0; }
.prototype-lab__grant-form { position: relative; margin-top: 16px; padding: 54px 20px 20px; border: 1px solid rgba(140, 121, 255, .58); border-radius: 12px; background: linear-gradient(125deg, rgba(32, 27, 67, .82), var(--navy) 58%); box-shadow: inset 0 2px rgba(157, 124, 255, .55), 0 16px 34px rgba(0, 0, 0, .14); }
.prototype-lab__section:target .prototype-lab__grant-form { border-color: #ffce4f; box-shadow: inset 0 2px #ffce4f, 0 0 0 4px rgba(200, 157, 34, .11), 0 18px 40px rgba(0, 0, 0, .2); }
.prototype-lab__grant-form::before { position: absolute; top: 18px; left: 20px; color: #cbbdff; content: "STEP 3  ·  ASSIGN RELEASE + REVIEWER"; font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .1em; }
.prototype-lab__grant-form .button--primary { min-height: 46px; padding-inline: 20px; }
.prototype-lab__grant-list { display: grid; gap: 10px; margin-top: 14px; }
.prototype-lab__grant-row { display: flex; padding: 14px 16px; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid var(--line); border-radius: 10px; background: #0b1320; }
.prototype-lab__grant-copy { display: grid; gap: 4px; }
.prototype-lab__grant-copy b { font-size: calc(11px + var(--font-boost)); }
.prototype-lab__grant-copy small { color: var(--muted); font-size: calc(8px + var(--font-boost)); line-height: 1.45; }
.prototype-lab__grant-row form { flex: 0 0 auto; margin: 0; }
.project-member-select > div { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 8px; }
.project-member-select label { display: flex; padding: 10px; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 7px; background: #080e17; cursor: pointer; }
.project-member-select input { width: 18px; min-height: 18px; }
.project-member-select label > span { display: grid; gap: 3px; font-size: calc(10px + var(--font-boost)); }
.project-member-select small { color: var(--muted); font-size: calc(8px + var(--font-boost)); }
.project-link-fields > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mission-control-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mission-control-grid > label { align-content: start; }
.mission-control-grid label > small { color: var(--muted); font-size: calc(8px + var(--font-boost)); line-height: 1.4; }
.mission-toggle { display: grid; grid-template-columns: 22px minmax(0, 1fr); min-height: 82px; padding: 12px; align-items: start; gap: 10px; border: 1px solid #315c66; border-radius: 8px; background: #080e17; cursor: pointer; }
.mission-toggle input { width: 20px; min-height: 20px; margin-top: 2px; accent-color: var(--cyan); }
.mission-toggle > span { display: grid; gap: 5px; }
.mission-toggle b { font-size: calc(10px + var(--font-boost)); }
.mission-toggle--featured { border-color: #7c631e; background: #18150e; }
.mission-toggle--featured input { accent-color: var(--gold); }
.mission-control-help { margin: 13px 0 0; padding: 11px 12px; border-left: 3px solid var(--cyan); background: #0b2028; color: #b8c5cd; font-size: calc(9px + var(--font-boost)); line-height: 1.55; }
.project-live-form { display: flex; margin-top: 20px; padding: 16px; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #2d6c5a; border-radius: 9px; background: #0f2b24; }
.project-live-form > div { display: grid; gap: 5px; }
.project-live-form b { font-size: calc(11px + var(--font-boost)); }
.project-live-form p { max-width: 650px; margin: 0; color: #a1cdbd; font-size: calc(9px + var(--font-boost)); line-height: 1.45; }
.project-live-form .button { flex: 0 0 auto; }
.project-archive-form { margin-top: 20px; padding-top: 18px; border-top: 1px solid #5e4c20; }
.project-detail-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; min-height: 310px; padding: clamp(26px, 5vw, 54px); align-items: center; gap: 48px; overflow: hidden; border: 1px solid #2e626c; border-radius: 14px; background: radial-gradient(circle at 85% 45%, rgba(53, 189, 199, .17), transparent 22%), linear-gradient(120deg, #101728, #0b2028); }
.project-detail-hero::after { position: absolute; right: -120px; bottom: -210px; width: 620px; height: 360px; border: 2px solid rgba(53, 189, 199, .11); border-radius: 50%; content: ""; transform: rotate(-14deg); box-shadow: 0 0 0 38px rgba(53, 189, 199, .02), 0 0 0 76px rgba(53, 189, 199, .012); }
.project-detail-hero > * { position: relative; z-index: 1; }
.project-detail-hero h1 { max-width: 1000px; margin: 0; font-size: calc(clamp(42px, 7vw, 88px) + var(--font-boost)); line-height: .92; letter-spacing: -.065em; }
.project-detail-hero > div:first-child > p:not(.overline) { max-width: 760px; margin: 18px 0 0; color: var(--muted); font-size: calc(13px + var(--font-boost)); line-height: 1.55; }
.project-detail-meta { display: flex; margin-top: 20px; align-items: center; gap: 10px; }
.project-detail-meta > span:last-child { color: var(--cyan-soft); font-size: calc(10px + var(--font-boost)); font-weight: 800; }
.project-progress-orbit { display: grid; width: 178px; height: 178px; border: 1px solid rgba(53, 189, 199, .42); border-radius: 50%; place-items: center; align-content: center; box-shadow: 0 0 0 20px rgba(53, 189, 199, .04), 0 0 42px rgba(53, 189, 199, .13); }
.project-progress-orbit strong { color: var(--cyan); font-size: calc(52px + var(--font-boost)); line-height: 1; }
.project-progress-orbit strong small { font-size: calc(18px + var(--font-boost)); }
.project-progress-orbit span { margin-top: 7px; color: var(--muted); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.project-detail-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(280px, .65fr); gap: 12px; margin-top: 12px; }
.project-detail-main, .project-detail-side { display: grid; align-content: start; gap: 12px; }
.project-section { min-width: 0; padding: 22px; border: 1px solid var(--line); border-radius: 12px; background: var(--navy); }
.project-section h2 { margin: 0; font-size: calc(21px + var(--font-boost)); letter-spacing: -.035em; }
.project-section__title { display: flex; margin-bottom: 16px; align-items: center; justify-content: space-between; gap: 18px; }
.project-section__title > span { color: var(--muted); font-size: calc(8px + var(--font-boost)); font-weight: 900; letter-spacing: .08em; }
.master-briefing { padding: 18px; border-left: 3px solid var(--cyan); border-radius: 0 8px 8px 0; background: #0b2028; color: #dbe1e7; font-size: calc(12px + var(--font-boost)); line-height: 1.7; }
.project-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 8px; }
.project-links > a { display: grid; grid-template-columns: 40px 1fr auto; min-height: 76px; padding: 11px; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; }
.project-links > a:hover { border-color: var(--cyan); }
.resource-icon { display: grid; width: 38px; height: 38px; border: 1px solid #2d6670; border-radius: 8px; place-items: center; background: #102732; color: var(--cyan); transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.resource-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.resource-icon--brand { border-color: rgba(255, 255, 255, .86); background: #fff; }
.resource-icon--brand img { display: block; width: 23px; height: 23px; object-fit: contain; }
.resource-icon--make img { width: 26px; height: 26px; }
.project-links > a:hover .resource-icon { transform: translateY(-1px) scale(1.04); border-color: var(--cyan); background: #163540; }
.project-links > a:hover .resource-icon--brand { border-color: #fff; background: #fff; }
.project-links > a > div { display: grid; min-width: 0; gap: 4px; }
.project-links b { font-size: calc(10px + var(--font-boost)); }
.project-links small { overflow: hidden; color: var(--muted); font-size: calc(8px + var(--font-boost)); text-overflow: ellipsis; white-space: nowrap; }
.browser-preview { overflow: hidden; border: 1px solid #2a525c; border-radius: 10px; background: #080e17; }
.browser-preview > div { display: grid; grid-template-columns: repeat(3, 8px) minmax(0, 1fr); padding: 10px 12px; align-items: center; gap: 7px; border-bottom: 1px solid var(--line); background: #111d2b; }
.browser-preview > div > i { width: 8px; height: 8px; border-radius: 50%; background: #ff7275; }
.browser-preview > div > i:nth-child(2) { background: var(--gold); }
.browser-preview > div > i:nth-child(3) { background: var(--green); }
.browser-preview > div > span { overflow: hidden; padding: 6px 10px; border-radius: 5px; background: #080e17; color: var(--muted); font-size: calc(8px + var(--font-boost)); text-overflow: ellipsis; white-space: nowrap; }
.browser-preview > figure { margin: 0; overflow: hidden; border-bottom: 1px solid var(--line); background: #050811; }
.browser-preview > figure img { display: block; width: 100%; max-height: 460px; object-fit: cover; object-position: top center; }
.browser-preview > section { display: grid; min-height: 230px; padding: 30px; place-items: center; align-content: center; text-align: center; background: radial-gradient(circle, rgba(53, 189, 199, .1), transparent 42%); }
.browser-preview > section > b { font-size: calc(20px + var(--font-boost)); }
.browser-preview > section > p { max-width: 480px; margin: 9px 0 18px; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.5; }
.project-comment-list { display: grid; gap: 10px; }
.project-comment-list > article { display: grid; grid-template-columns: 38px 1fr; gap: 11px; }
.project-comment-list > article > span { display: grid; width: 38px; height: 38px; border: 1px solid var(--cyan); border-radius: 7px; place-items: center; background: #17343a; color: var(--cyan-soft); font-size: calc(11px + var(--font-boost)); font-weight: 900; }
.project-comment-list > article > div { padding: 12px 14px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; }
.project-comment-list header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.project-comment-list b { font-size: calc(10px + var(--font-boost)); }
.project-comment-list time { color: var(--muted); font-size: calc(8px + var(--font-boost)); }
.project-comment-list p { margin: 7px 0 0; color: #c6d0d5; font-size: calc(10px + var(--font-boost)); line-height: 1.55; }
.project-comment-form { display: grid; margin-top: 14px; gap: 10px; }
.project-comment-form .button { justify-self: end; }
.project-owner { display: grid; grid-template-columns: 62px minmax(0, 1fr); margin-top: 16px; padding: 16px; align-items: center; gap: 13px; border: 1px solid #7c631e; border-radius: 8px; background: #241d10; }
.project-owner > div { display: grid; min-width: 0; gap: 5px; }
.project-owner span { color: var(--gold); font-size: calc(8px + var(--font-boost)); font-weight: 900; }
.project-owner b { font-size: calc(13px + var(--font-boost)); }
.project-owner small { color: #d3c496; font-size: calc(9px + var(--font-boost)); line-height: 1.4; overflow-wrap: anywhere; }
.project-owner-avatar { width: 62px; height: 62px; border: 1px solid var(--gold); border-radius: 10px; object-fit: cover; background: #050811; }
.project-member-list { display: grid; margin-top: 10px; gap: 7px; }
.project-member-list > div { display: grid; grid-template-columns: 36px 1fr; padding: 9px; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 8px; background: #0b1320; }
.project-member-avatar { width: 36px; height: 36px; border: 1px solid var(--cyan); border-radius: 7px; object-fit: cover; background: #050811; }
.project-member-list p { display: grid; margin: 0; gap: 3px; }
.project-member-list b { font-size: calc(10px + var(--font-boost)); }
.project-member-list small { color: var(--muted); font-size: calc(8px + var(--font-boost)); }
.project-facts dl { display: grid; margin: 14px 0 0; }
.project-facts dl > div { display: flex; padding: 10px 0; align-items: center; justify-content: space-between; gap: 18px; border-top: 1px solid var(--line); }
.project-facts dt { color: var(--muted); font-size: calc(9px + var(--font-boost)); }
.project-facts dd { margin: 0; font-size: calc(9px + var(--font-boost)); font-weight: 900; text-align: right; }
.project-expiry-notice { margin: 12px 0 0; padding: 10px; border: 1px solid #7c631e; border-radius: 7px; background: #241d10; color: #ffda76; font-size: calc(8px + var(--font-boost)); font-weight: 800; line-height: 1.45; }
.launch-card--projects { border-color: rgba(53, 189, 199, .45); background: #0b2028; }

.module-hero { position: relative; display: grid; grid-template-columns: 180px 1fr; min-height: 340px; padding: clamp(25px, 5vw, 55px); align-items: center; gap: 45px; overflow: hidden; border: 1px solid #2e626c; border-radius: 13px; background: radial-gradient(circle at 15% 50%, rgba(53, 189, 199, .2), transparent 28%), linear-gradient(120deg, #0b2028, #101728 62%); }
.module-hero::after { position: absolute; right: -5%; bottom: -45%; width: 660px; height: 300px; border: 3px solid rgba(53, 189, 199, .12); border-radius: 50%; content: ""; transform: rotate(-13deg); box-shadow: 0 0 0 36px rgba(53, 189, 199, .018), 0 0 0 72px rgba(53, 189, 199, .012); }
.module-emblem { position: relative; z-index: 1; display: grid; width: 160px; height: 160px; border: 1px solid rgba(53, 189, 199, .42); border-radius: 50%; place-items: center; box-shadow: 0 0 0 22px rgba(53, 189, 199, .05), 0 0 0 44px rgba(53, 189, 199, .025); }
.module-emblem span { display: grid; width: 94px; height: 94px; border: 1px solid var(--cyan); border-radius: 12px; place-items: center; background: #0b2028; color: var(--cyan-soft); font-size: calc(28px + var(--font-boost)); font-weight: 900; }
.module-hero > div:last-child { position: relative; z-index: 1; }
.module-hero h1 { margin: 0; font-size: calc(clamp(38px, 6vw, 76px) + var(--font-boost)); line-height: .93; letter-spacing: -.06em; }
.module-hero p:not(.overline) { max-width: 650px; margin: 18px 0 22px; color: var(--muted); font-size: calc(14px + var(--font-boost)); line-height: 1.55; }
.build-chip { border: 1px solid #2a5b65; background: #0b2028; color: var(--cyan-soft); }
.module-progress { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 10px; }
.module-progress article { padding: 20px; border: 1px solid var(--line); border-radius: 10px; background: var(--navy); }
.module-progress span { color: var(--cyan); font-size: calc(23px + var(--font-boost)); font-weight: 900; }
.module-progress b { display: block; margin-top: 14px; font-size: calc(13px + var(--font-boost)); }
.module-progress p { margin: 7px 0 0; color: var(--muted); font-size: calc(10px + var(--font-boost)); line-height: 1.5; }

@media (max-width: 1180px) {
  .cockpit-grid { grid-template-columns: minmax(220px, .75fr) minmax(480px, 1.4fr); }
  .console--right { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
  .console--right .console-head { grid-column: 1 / -1; }
  .fleet-card + .fleet-card { margin-top: 0; }
  .crew-admin-card { grid-column: 1 / -1; margin-top: 2px; }
  .project-detail-grid { grid-template-columns: 1fr; }
  .project-detail-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1800px) {
  html[data-ui-density="comfort"] .cockpit-grid { grid-template-columns: minmax(220px, .72fr) minmax(480px, 1.55fr); }
  html[data-ui-density="comfort"] .console--right { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
  html[data-ui-density="comfort"] .console--right .console-head { grid-column: 1 / -1; }
  html[data-ui-density="comfort"] .console--right .fleet-card + .fleet-card { margin-top: 0; }
  html[data-ui-density="comfort"] .console--right .crew-admin-card { grid-column: 1 / -1; margin-top: 2px; }
}

@media (max-width: 860px) {
  .topbar { grid-template-columns: 1fr auto; }
  .topbar-center { display: none; }
  .cockpit-grid { grid-template-columns: 1fr; }
  .console--center { grid-row: 1; }
  .console--right { display: block; grid-column: auto; }
  .fleet-card + .fleet-card { margin-top: 8px; }
  .lower-deck { grid-template-columns: 1fr; }
  .launch-grid { grid-template-columns: 1fr; }
  .profile-settings-grid { grid-template-columns: 1fr; }
  .module-hero { grid-template-columns: 1fr; text-align: center; }
  .module-emblem { margin: auto; }
  .module-hero p { margin-left: auto !important; margin-right: auto !important; }
  .role-preview-control { grid-template-columns: 1fr; }
  .prototype-lab__control { grid-template-columns: 1fr; }
  .generated-link { grid-template-columns: 1fr; }
  .project-hub-hero { align-items: flex-start; flex-direction: column; }
  .project-detail-hero { grid-template-columns: 1fr; }
  .project-progress-orbit { width: 140px; height: 140px; }
  .project-form__grid, .project-link-fields > div { grid-template-columns: 1fr; }
  .project-form__grid .form-grid__full { grid-column: auto; }
  html[data-ui-density="comfort"] .cockpit-grid { grid-template-columns: 1fr; }
  html[data-ui-density="comfort"] .console--right { display: block; grid-column: auto; }
  html[data-ui-density="comfort"] .console--right .fleet-card + .fleet-card { margin-top: 8px; }
}

@media (max-width: 620px) {
  html, body { overflow-x: hidden; }
  .access-page { width: 100%; min-width: 0; padding: 18px 10px; place-items: stretch; align-content: start; }
  .access-card, .access-card--wide { width: 100%; min-width: 0; max-width: calc(100vw - 20px); margin: 0; }
  .access-card h1 { max-width: 100%; overflow-wrap: anywhere; }
  .access-foot { max-width: 100%; overflow-wrap: anywhere; text-align: center; }
  .cockpit-shell { padding: 0 8px; }
  .cockpit-shell[data-display-control] { padding-bottom: 58px; }
  .topbar { display: flex; width: 100%; padding-inline: 3px; justify-content: space-between; }
  .topbar-center { display: none; }
  .topbar-actions { margin-left: auto; gap: 5px; }
  .language-switcher { gap: 0; }
  .language-switcher > span { display: none; }
  .language-switcher > div { padding: 2px; gap: 1px; }
  .language-switcher button { min-width: 24px; width: 24px; height: 25px; padding: 0 2px; font-size: calc(6px + var(--font-boost)); }
  .language-switcher--access { gap: 7px; }
  .language-switcher--access > span { display: inline; }
  .language-switcher--access button { width: auto; min-width: 32px; height: 28px; font-size: calc(7px + var(--font-boost)); }
  .crew-menu { display: flex; margin-left: auto; }
  .brand-mark, .brand-mark img { width: 92px; height: 30px; }
  .brand-copy { display: none; }
  .crew-menu > span:nth-child(2) { display: none; }
  .display-controller { top: auto; right: 8px; bottom: 10px; width: auto; padding: 4px; align-items: center; grid-template-columns: auto 52px auto; border-radius: 8px; transform: none; }
  .display-controller > span, .display-controller > small { display: none; }
  .display-controller > div { grid-template-columns: 28px 42px 28px; align-items: center; }
  .display-controller button { height: 28px; }
  .display-controller .display-controller__reset { width: 28px; height: 28px; }
  .dashboard, .cockpit-grid, .console, .welcome-strip, .lower-deck { width: 100%; min-width: 0; max-width: 100%; }
  .welcome-strip { align-items: flex-start; flex-direction: column; overflow: hidden; }
  .welcome-strip > div:first-child { width: 100%; min-width: 0; }
  .welcome-strip p:last-child { max-width: 100%; overflow-wrap: anywhere; }
  .flight-score { min-width: 0; }
  .metric-row { grid-template-columns: 1fr; }
  .hero-module, .hero-module--project { grid-template-columns: 1fr; text-align: center; }
  .hero-module h3 { overflow-wrap: anywhere; }
  .hero-module p { margin-left: auto !important; margin-right: auto !important; }
  .hero-project-preview { width: 100%; height: 180px; }
  .hero-project-kicker, .hero-project-meta, .hero-project-crew, .hero-project-owner { justify-content: center; }
  .mission-assignees--hero { padding-left: 0; border-left: 0; }
  .mission-queue-panel > header { align-items: flex-start; flex-direction: column; }
  .mission-queue-grid, .mission-control-grid { grid-template-columns: 1fr; }
  .mission-queue-card__meta { grid-template-columns: 1fr; align-items: start; }
  .mission-queue-card__meta em { grid-column: 1 / -1; justify-self: start; }
  .project-live-form { align-items: stretch; flex-direction: column; }
  .project-live-form .button { width: 100%; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid__full { grid-column: auto; }
  .access-card { padding: 28px 20px; }
  .access-meta, .cockpit-footer { align-items: flex-start; flex-direction: column; }
  .module-progress { grid-template-columns: 1fr; }
  .staged-import { align-items: stretch; flex-direction: column; }
  .staged-import .button { width: 100%; }
  .system-update { top: 62px; margin-inline: 0; align-items: stretch; flex-direction: column; }
  .system-update .button { width: 100%; }
  .page-view { padding-inline: 12px; }
  .page-heading h1 { font-size: calc(clamp(30px, 10.25vw, 40px) + var(--font-boost)); }
  .crew-card, .roster-card { padding: 16px; }
  .crew-card__head { grid-template-columns: 54px minmax(0, 1fr); }
  .crew-card__head:has(.card-avatar) { grid-template-columns: 54px minmax(0, 1fr); }
  .crew-card__head i { grid-column: 2; justify-self: start; }
  .card-avatar { width: 54px; height: 54px; }
  .info-banner--live, .identity-scope { align-items: flex-start; grid-template-columns: 1fr; flex-direction: column; }
  .live-sync { align-self: flex-start; }
  .role-preview-banner, .technical-missions__head { align-items: stretch; flex-direction: column; }
  .role-preview-banner form, .role-preview-banner .button { width: 100%; }
  .technical-missions__head-meta { align-items: flex-start; flex-wrap: wrap; }
  .technical-missions__grid { grid-template-columns: 1fr; }
  .technical-mission-card:nth-child(odd) { border-right: 0; }
  .technical-mission-card summary { min-height: 0; padding: 16px; grid-template-columns: 38px minmax(0, 1fr); }
  .technical-mission-card__footer, .mission-comms > header, .mission-comms__controls, .mission-comms__actions { align-items: flex-start; flex-direction: column; }
  .technical-mission-card__signals { max-width: none; justify-content: flex-start; text-align: left; }
  .technical-mission-facts, .mission-admin form { grid-template-columns: 1fr; }
  .mission-comms > header small { max-width: none; text-align: left; }
  .mission-comms__actions .button { width: 100%; }
  .role-preview-control form { grid-template-columns: 1fr; }
  .copy-link { grid-template-columns: 1fr; }
  .passkey-panel__head, .passkey-list article, .passkey-actions, .passkey-reminder { align-items: stretch; flex-direction: column; }
  .passkey-reminder .button, .passkey-actions .button { width: 100%; }
  .project-hub-hero { min-height: 0; padding: 26px 20px; }
  .project-hub-stats { width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .project-hub-stats article { min-height: 78px; }
  .project-card { min-height: 0; padding: 18px; }
  .project-detail-hero { padding: 28px 20px; gap: 28px; }
  .project-detail-side { grid-template-columns: 1fr; }
  .project-section { padding: 17px; }
  .project-section__title { align-items: flex-start; flex-direction: column; }
  .project-progress-orbit { width: 120px; height: 120px; }
  .project-progress-orbit strong { font-size: calc(42px + var(--font-boost)); }
  .project-comment-form .button { width: 100%; }
  .project-admin__body { padding: 14px; }
  .prototype-lab__control { padding: 17px; }
  .prototype-lab__control form, .prototype-lab__control .button { width: 100%; }
  .prototype-lab__release { padding: 17px; }
  .prototype-lab__release-facts { grid-template-columns: 1fr; gap: 10px; }
  .prototype-lab__release-facts > div, .prototype-lab__release-facts > div:first-child { padding: 0; }
  .prototype-lab__release-facts > div + div { padding-top: 10px; border-top: 1px solid var(--line); border-left: 0; }
  .prototype-lab__release-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .prototype-lab__assign-cta { width: 100%; }
  .prototype-lab__archive-history > summary { align-items: flex-start; flex-direction: column; }
  .prototype-lab__archive-history .prototype-lab__release-grid { padding: 10px; }
  .prototype-lab__release-actions, .prototype-lab__release-action, .prototype-lab__release-actions .button { width: 100%; }
  .prototype-lab__danger-zone .button { width: 100%; }
  .prototype-lab__grant-form { padding: 15px; }
  .prototype-lab__grant-row { align-items: stretch; flex-direction: column; }
  .prototype-lab__grant-row form, .prototype-lab__grant-row .button { width: 100%; }
  .chat-panel { padding: 15px; }
  .chat-panel .panel-title { align-items: flex-start; flex-direction: column; gap: 5px; }
  .chat-list { max-height: 440px; }
  .chat-message { grid-template-columns: auto minmax(0, 1fr); padding-block: 8px; gap: 7px; }
  .chat-message__fallback, .chat-message__avatar { height: 31px; }
  .chat-message__fallback { min-width: 31px; max-width: 76px; padding-inline: 6px; }
  .chat-message__avatar { width: 31px; }
  .chat-message > div { padding: 8px 9px; }
  .chat-message header { align-items: flex-start; flex-direction: column; gap: 4px; }
  .chat-message header b { flex-wrap: wrap; }
  .chat-form__actions { grid-template-columns: 1fr auto; }
  .chat-form__actions > span { grid-row: 2; grid-column: 1 / -1; text-align: left; line-height: 1.4; }
  .chat-form__actions .button { min-width: 108px; }
  .mention-autocomplete { right: 4px; left: 4px; }
  .mention-autocomplete small { max-width: 48%; }
}

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