/* CD-THRESHOLD-P2-001 Phase 2 — entry surfaces only. No gate or authority styling is implied. */
.cd-entry {
  min-height:100vh;
  background:
    radial-gradient(ellipse 690px 470px at 5% 34%,rgba(24,95,97,.16),transparent 72%),
    radial-gradient(ellipse 760px 460px at 93% 7%,rgba(37,75,86,.2),transparent 76%),
    linear-gradient(157deg,#0a1820 0%,#081319 48%,#070e13 100%);
}
.cd-entry .entry-layout {
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(390px,1fr);
  align-items:start;
  column-gap:clamp(34px,5.8vw,100px);
  padding:clamp(42px,6.1vw,84px) 0 clamp(52px,7vw,96px);
}
.cd-entry .entry-narrative {
  position:relative;
  isolation:isolate;
  padding:clamp(10px,1.5vw,25px) 0 0;
  max-width:none;
}
.cd-entry .entry-eyebrow {
  display:flex;align-items:center;gap:11px;
  color:#a2cacc;font-size:11px;line-height:1.5;letter-spacing:.19em;font-weight:760;
}
.cd-entry .entry-point {
  display:inline-block;width:6px;height:6px;flex:none;
  border-radius:50%;background:#74c9c5;
  box-shadow:0 0 0 4px rgba(70,168,164,.13);
}
.cd-entry .entry-narrative h1 {
  font-size:clamp(3.3rem,5.7vw,5.75rem);
  line-height:1.02;letter-spacing:-.055em;font-weight:680;
  margin:clamp(26px,3vw,38px) 0 24px;
  color:#f3f7f5;
}
.cd-entry .entry-narrative h1 span {color:#8fdfd8;}
.cd-entry .entry-lede {
  font-size:clamp(1rem,1.35vw,1.14rem);
  line-height:1.78;color:#c3d4d6;
  max-width:46ch;margin:0 0 34px;
}
.cd-entry .entry-principle {
  display:flex;align-items:flex-start;gap:16px;
  border-top:1px solid rgba(105,159,162,.34);
  padding-top:23px;max-width:470px;
}
.cd-entry .entry-principle-mark {
  display:grid;place-items:center;flex:none;
  width:41px;height:41px;border-radius:12px;
  font-size:1.4rem;font-weight:650;color:#e4cc9d;
  border:1px solid rgba(213,166,94,.52);background:rgba(92,68,40,.2);
}
.cd-entry .entry-principle strong {display:block;color:#eff4f0;font-size:.98rem;line-height:1.5;}
.cd-entry .entry-principle p {color:#a9c0c3;font-size:.92rem;line-height:1.7;margin:5px 0 0;}
.cd-entry .entry-transition {
  margin-top:clamp(36px,5.3vw,68px);
  display:grid;gap:0;max-width:425px;
  border-top:1px solid #28434b;
}
.cd-entry .entry-transition>div {
  display:flex;align-items:center;gap:17px;padding:15px 0;
  border-bottom:1px solid #28434b;
}
.cd-entry .entry-index {
  display:grid;place-items:center;
  width:34px;height:34px;flex:none;border:1px solid #3a6970;
  border-radius:50%;color:#a0d3d1;font-size:11px;letter-spacing:.03em;font-weight:700;
}
.cd-entry .entry-transition>div:first-child .entry-index {
  background:#1c5658;color:#f6fffd;border-color:#5bafad;
}
.cd-entry .entry-transition strong {display:block;font-size:.86rem;color:#eff6f5;font-weight:720;}
.cd-entry .entry-transition small {display:block;color:#96adb4;font-size:.78rem;margin-top:1px;}
.cd-entry .entry-actions {min-width:0;display:grid;gap:13px;}
.cd-entry .entry-panel {
  grid-column:auto;
  border:1px solid #345760;
  border-top:2px solid #4b9698;
  border-radius:19px;
  background:linear-gradient(150deg,rgba(25,44,51,.96),rgba(13,26,33,.99) 73%);
  padding:clamp(24px,3.1vw,42px);
  box-shadow:0 24px 62px rgba(0,0,0,.25),inset 0 1px rgba(234,255,251,.04);
}
.cd-entry .entry-panel-top {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.cd-entry .entry-kicker {color:#9ccdd0;font-size:10px;letter-spacing:.17em;font-weight:800;}
.cd-entry .entry-access-state {
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid #445c64;border-radius:100px;
  color:#c3d1d3;background:#1c2a31;
  padding:5px 10px;font-size:10px;line-height:1.45;font-weight:770;letter-spacing:.06em;
}
.cd-entry .entry-access-state>span {width:6px;height:6px;border-radius:50%;background:#869ca3;flex:none;}
.cd-entry .entry-panel h2 {font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.13;margin:19px 0 9px;}
.cd-entry .entry-panel-description {margin:0 0 26px;color:#bacdd0;font-size:.96rem;line-height:1.75;max-width:53ch;}
.cd-entry .entry-field {gap:9px;margin:19px 0;}
.cd-entry .entry-field label {
  font-size:11px;line-height:1.4;letter-spacing:.13em;
  text-transform:uppercase;color:#d3e3e3;font-weight:740;
}
.cd-entry .entry-field input {
  width:100%;min-height:53px;padding:14px 15px;
  border-radius:10px;border:1px solid #466671;
  background:#0b1920;color:#f4f8f6;font-size:16px;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.15);
}
.cd-entry .entry-field input::placeholder {color:#9eafb2;}
.cd-entry .entry-field input:hover {border-color:#638d94;}
.cd-entry .entry-field input:focus-visible {
  outline:3px solid var(--cd-focus);outline-offset:2px;border-color:#88d8d0;
}
.cd-entry .entry-password {position:relative;}
.cd-entry .entry-password input {padding-right:83px;}
.cd-entry .entry-reveal {
  position:absolute;right:8px;top:50%;transform:translateY(-50%);
  padding:6px 12px;min-height:35px;border-radius:7px;
  background:#213039;border:1px solid #516a73;color:#e5f2f0;
  font-size:12px;font-weight:740;box-shadow:none;
}
.cd-entry .entry-reveal:hover {background:#2c444a;border-color:#6aa7a3;}
.cd-entry .entry-hint {font-size:.8rem;line-height:1.6;color:#adbdc3;margin:2px 0 0;}
.cd-entry [hidden] {display:none!important;}
.cd-entry .entry-primary {
  width:100%;display:flex;align-items:center;justify-content:space-between;
  margin-top:25px;min-height:54px;padding:14px 17px;
  color:#f3fffd;background:linear-gradient(110deg,#1c6767,#1d5158);
  border:1px solid #4fa9a5;border-radius:10px;
  font-size:.98rem;font-weight:740;
}
.cd-entry .entry-primary:hover:not(:disabled) {background:linear-gradient(110deg,#257777,#225f65);}
.cd-entry .entry-primary span:last-child {font-size:20px;line-height:1;color:#d4fffa;}
.cd-entry button[data-busy='true'] {cursor:wait;opacity:.73;}
.cd-entry .entry-feedback {
  font-size:.88rem;line-height:1.6;
  margin:15px 0 0;color:#c2e4de;overflow-wrap:anywhere;
}
.cd-entry .entry-feedback:empty {display:none;}
.cd-entry .entry-error {
  padding:11px 13px;border:1px solid #987052;border-left:3px solid #d5a46b;
  border-radius:8px;background:rgba(80,45,32,.27);
  color:#ffdcc4;
}
.cd-entry .entry-panel-footnote {
  border-top:1px solid #2d4851;
  padding-top:16px;margin:26px 0 0;
  color:#a7bcc0;font-size:.82rem;line-height:1.65;
}
.cd-entry .entry-invitation {
  border:1px solid #314b53;
  border-radius:14px;background:rgba(13,28,35,.86);overflow:hidden;
}
.cd-entry .entry-invitation summary {
  cursor:pointer;display:flex;align-items:center;justify-content:space-between;
  gap:18px;min-height:83px;padding:17px 22px;list-style:none;
  color:#f0f8f6;
}
.cd-entry .entry-invitation summary::-webkit-details-marker {display:none;}
.cd-entry .entry-invitation summary:hover {background:rgba(41,76,81,.26);}
.cd-entry .entry-invitation summary:focus-visible {outline:3px solid var(--cd-focus);outline-offset:-3px;}
.cd-entry .entry-invitation summary small {
  display:block;color:#a1bdc2;letter-spacing:.16em;font-size:10px;font-weight:760;margin-bottom:5px;
}
.cd-entry .entry-invitation summary strong {font-size:.89rem;font-weight:690;line-height:1.55;}
.cd-entry .entry-disclosure-icon {
  display:grid;place-items:center;flex:none;width:30px;height:30px;
  border-radius:9px;border:1px solid #547178;color:#c6dedd;font-size:19px;line-height:1;
}
.cd-entry .entry-invitation[open] .entry-disclosure-icon {transform:rotate(45deg);border-color:#7cbab5;}
.cd-entry .entry-invite-content {
  padding:0 22px 23px;border-top:1px solid #34515b;
}
.cd-entry .entry-invite-content>p {
  color:#b9cbd0;font-size:.87rem;line-height:1.65;margin:17px 0;
}
.cd-entry .entry-secondary {
  display:flex;align-items:center;justify-content:space-between;
  width:100%;min-height:46px;border-color:#52777c;
  font-weight:720;padding:12px 15px;
}
.cd-entry .entry-activation-result {
  padding:0 8px;margin:0;
}
.cd-entry .entry-activation-result:not(:empty) {
  padding:12px 15px;
  background:rgba(36,71,70,.3);
  border:1px solid #3c7874;border-radius:10px;
}
.cd-entry .entry-footer {
  display:flex;align-items:start;justify-content:space-between;gap:18px;
  border-top:1px solid #28444d;
  padding:20px 0 38px;color:#9db5b9;
  font-size:.73rem;line-height:1.6;letter-spacing:.02em;
}
.cd-entry .entry-footer span:first-child {font-weight:730;letter-spacing:.12em;color:#c8d9d8;}
.cd-entry .entry-owner-target {
  display:grid;gap:4px;max-width:300px;margin-top:43px;
  padding:17px 21px;border:1px solid #31525a;border-radius:12px;
  background:rgba(22,45,51,.52);
}
.cd-entry .entry-owner-target>span {color:#9dbbc1;font-size:10px;letter-spacing:.16em;font-weight:760;}
.cd-entry .entry-owner-target strong {font-size:1.2rem;color:#e6f5f3;}
.cd-entry .entry-owner-target small {color:#a7bdc2;font-size:.8rem;line-height:1.5;}
.cd-entry .entry-owner-progress {
  list-style:none;padding:0;margin:17px 0 24px;
  border-top:1px solid #304b53;
}
.cd-entry .entry-owner-progress li {
  display:flex;align-items:flex-start;gap:15px;padding:17px 0;
  border-bottom:1px solid #304b53;
}
.cd-entry .entry-step-index {
  display:grid;place-items:center;flex:none;
  width:33px;height:33px;border:1px solid #4d6770;
  border-radius:10px;font-size:11px;font-weight:760;color:#b2cbd0;
}
.cd-entry .entry-owner-progress strong {display:block;color:#e8f1f0;font-size:.94rem;line-height:1.5;}
.cd-entry .entry-owner-progress small {display:block;margin-top:3px;color:#9eb6bc;font-size:.78rem;line-height:1.6;}
.cd-entry .entry-owner-progress [data-status='CURRENT'] .entry-step-index {background:#1a575a;color:#f8fffd;border-color:#5baba8;}
.cd-entry .entry-owner-progress [data-status='DONE'] .entry-step-index {background:#224441;color:#c4eee3;border-color:#4a9389;}
.cd-entry .entry-owner-progress [data-status='FAILED'] .entry-step-index {background:#4b3025;color:#ffdbbd;border-color:#ba8859;}
.cd-entry .entry-owner-notice {
  display:flex;align-items:flex-start;gap:12px;padding:15px;
  border:1px solid #41616b;border-radius:11px;background:#122832;
}
.cd-entry .entry-notice-dot {width:9px;height:9px;flex:none;margin-top:6px;background:#9bbac0;border-radius:50%;}
.cd-entry .entry-owner-notice p {color:#e0eeee;line-height:1.65;font-size:.9rem;margin:0;}
.cd-entry .entry-owner-notice[data-status='DONE'] {border-color:#448f86;background:#153633;}
.cd-entry .entry-owner-notice[data-status='DONE'] .entry-notice-dot {background:#7bcdbd;}
.cd-entry .entry-owner-notice[data-status='FAILED'] {border-color:#977048;background:#32251c;}
.cd-entry .entry-owner-notice[data-status='FAILED'] .entry-notice-dot {background:#f2bd80;}
.cd-entry .entry-owner-alternative {
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;
  gap:13px;margin-top:22px;
}
.cd-entry .entry-owner-alternative>span {color:#b9c9ca;font-size:.81rem;}
.cd-entry .entry-owner-alternative .button {font-size:.84rem;padding:9px 13px;min-height:44px;gap:10px;}
.cd-entry .entry-owner-note {
  border-left:2px solid #a2804b;padding:10px 14px;
  color:#b3c8cb;font-size:.85rem;line-height:1.72;
}
.cd-entry .entry-owner-note strong {color:#eddbc0;}
@media(max-width:1000px) {
  .cd-entry .entry-layout {grid-template-columns:minmax(0,.85fr) minmax(340px,1fr);column-gap:28px;}
  .cd-entry .entry-narrative h1 {font-size:clamp(3rem,5.8vw,4.35rem);}
}
@media(max-width:820px) {
  .cd-entry .entry-layout {grid-template-columns:minmax(0,1fr);gap:35px;padding:35px 0 60px;}
  .cd-entry .entry-narrative h1 {font-size:clamp(2.9rem,8vw,4.2rem);}
  .cd-entry .entry-transition {margin-top:28px;display:flex;flex-wrap:wrap;gap:17px;border:0;}
  .cd-entry .entry-transition>div {border:0;padding:0;min-width:0;flex:1 1 160px;}
  .cd-entry .entry-principle {max-width:700px;}
  .cd-entry .entry-owner-target {margin-top:27px;}
}
@media(max-width:420px) {
  .cd-entry .entry-layout {padding-top:28px;gap:28px;}
  .cd-entry .entry-narrative h1 {font-size:clamp(2.75rem,11vw,3.4rem);}
  .cd-entry .entry-panel {padding:22px 19px;}
  .cd-entry .entry-panel-top {align-items:flex-start;}
  .cd-entry .entry-transition {gap:8px;}
  .cd-entry .entry-transition>div {flex:1 1 100%;}
  .cd-entry .entry-invitation summary {padding:16px;}
  .cd-entry .entry-invite-content {padding:0 16px 17px;}
  .cd-entry .entry-footer {flex-direction:column;gap:5px;}
}
@media(prefers-reduced-motion:reduce) {
  .cd-entry *, .cd-entry *::before, .cd-entry *::after {transition:none!important;animation:none!important;}
}
@media(forced-colors:active) {
  .cd-entry .entry-panel,.cd-entry .entry-invitation,.cd-entry .entry-owner-notice,.cd-entry .entry-principle-mark {border:1px solid CanvasText;}
  .cd-entry :is(button,input,summary,a):focus-visible {outline:3px solid Highlight;}
}
