/* GLB Premium 180° — result row + hub row separate; user dock stays upright. */

.glb-partner-reply {
  display: none;
}

.glb-partner-brand-hero {
  display: none;
}

.glb-user-read-strip {
  display: none;
}

.glb-speak-user-btn,
.glb-thanks-user-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid rgba(240, 201, 58, 0.36);
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.3);
  color: rgba(240, 201, 58, 0.94);
  font-weight: 700;
  letter-spacing: 0.04em;
  cursor: pointer;
  box-shadow: none;
}

.glb-speak-user-btn:active,
.glb-thanks-user-btn:active {
  background: rgba(0, 0, 0, 0.44);
}

.glb-speak-user-btn svg {
  flex: 0 0 auto;
  opacity: 0.92;
}

.glb-main {
  grid-template-areas:
    "result"
    "hub"
    "compose";
  grid-template-rows: minmax(0, 1fr) auto auto;
  gap: 10px;
}

#partner-reply-panel {
  grid-area: partner;
}

#they-read-panel {
  grid-area: result;
  min-height: 0;
}

#glb-partner-hub-spin {
  grid-area: hub;
}

#user-read-strip {
  grid-area: userread;
}

#glb-compose-stage {
  grid-area: compose;
}

#glb-partner-hub-spin {
  display: grid;
  gap: 8px;
  justify-items: center;
}


body.glb-partner-turn .glb-header .glb-title {
  transform: rotate(180deg);
  transform-origin: center center;
}

body.glb-partner-turn {
  --hub-side: 100px;
  --hub-center: 128px;
  --hub-align-offset: 10px;
}

body.glb-partner-turn .glb-main {
  grid-template-areas:
    "hub"
    "partner"
    "result"
    "userread"
    "compose";
  grid-template-rows: auto auto minmax(140px, 1fr) auto auto;
  gap: 8px;
}

body.glb-partner-turn .glb-partner-reply {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: stretch;
  min-height: 0;
  max-height: 32vh;
  padding: 12px 11px calc(11px + 6px) 13px;
  border: 1px solid rgba(240, 201, 58, 0.32);
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.42);
  box-shadow:
    inset 0 0 10px rgba(240, 201, 58, 0.05),
    0 0 10px rgba(0, 0, 0, 0.18);
  transform: rotate(180deg);
  transform-origin: center center;
}

body.glb-partner-turn #they-read-panel {
  transform: rotate(180deg);
  transform-origin: center center;
  min-height: clamp(118px, 24vh, 220px);
}

body.glb-partner-turn #glb-partner-hub-spin {
  transform: rotate(180deg);
  transform-origin: center center;
  padding: 2px 0 4px;
}

.glb-partner-brand-hero__main {
  position: relative;
  z-index: 1;
  font-family: 'DM Serif Display', Georgia, serif;
  font-size: clamp(0.58rem, 2.45vw, 0.76rem);
  font-weight: 400;
  letter-spacing: 0.34em;
  text-indent: 0.34em;
  color: #fff3bf;
  text-shadow:
    0 0 10px rgba(240, 201, 58, 0.55),
    0 2px 10px rgba(0, 0, 0, 0.92),
    0 4px 18px rgba(0, 0, 0, 0.72);
}

.glb-partner-brand-hero__flare {
  position: absolute;
  left: 50%;
  bottom: -2px;
  width: min(220px, 72vw);
  height: 2px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(240, 201, 58, 0.15) 18%,
    rgba(255, 248, 228, 0.92) 50%,
    rgba(240, 201, 58, 0.15) 82%,
    transparent 100%
  );
  box-shadow: 0 0 12px rgba(240, 201, 58, 0.42);
}

body.glb-partner-turn .glb-compose--dock {
  display: block !important;
  transform: none;
  grid-template-rows: auto;
  gap: 0;
  padding: 6px 8px calc(6px + 8px);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.glb-partner-turn .glb-compose-input {
  display: none !important;
}

body.glb-partner-turn #glb-compose-stage {
  min-height: 0;
  align-self: end;
}

body.glb-partner-turn .glb-compose-toolbar {
  gap: 10px;
}

body.glb-partner-turn .glb-compose-toolbar > * {
  min-height: 46px;
  font-size: clamp(0.72rem, 3.1vw, 0.88rem);
  font-weight: 700;
  border-radius: 12px;
}

body.glb-partner-turn .glb-speak-user-btn,
body.glb-partner-turn .glb-thanks-user-btn {
  display: inline-flex !important;
  background: rgba(0, 0, 0, 0.34);
  color: rgba(240, 201, 58, 0.94);
  border-color: rgba(240, 201, 58, 0.34);
  opacity: 1;
}

body.glb-partner-turn .glb-speak-user-btn:active,
body.glb-partner-turn .glb-thanks-user-btn:active {
  opacity: 1;
  background: rgba(0, 0, 0, 0.34);
}

body.glb-partner-turn .glb-speak-user-btn svg {
  flex: 0 0 auto;
  opacity: 0.9;
}

body.glb-partner-turn .glb-user-read-strip {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid rgba(240, 201, 58, 0.24);
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.36);
}

body.glb-partner-turn .glb-user-read-strip[hidden] {
  display: none !important;
}

.glb-user-read-strip__label {
  margin: 0;
  color: rgba(240, 201, 58, 0.88);
  font-size: clamp(0.68rem, 2.6vw, 0.78rem);
  font-weight: 700;
  letter-spacing: 0.08em;
}

.glb-user-read-strip__text {
  color: #fffaf2;
  font-size: clamp(1.05rem, 4.2vw, 1.35rem);
  font-weight: 800;
  line-height: 1.35;
  text-align: center;
  word-break: break-word;
  white-space: pre-wrap;
}

.glb-partner-compose-main {
  min-width: 0;
  display: grid;
  gap: 4px;
  align-content: start;
}

.glb-partner-reply-input {
  width: 100%;
  min-height: 4.3em;
  max-height: 6.2em;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--text);
  font-size: clamp(1.02rem, 4.4vw, 1.18rem);
  line-height: 1.46;
  resize: none;
  overflow-y: auto;
}

.glb-partner-reply-input::placeholder {
  color: rgba(245, 240, 230, 0.52);
}

.glb-partner-reply-input:focus::placeholder {
  color: rgba(245, 240, 230, 0.32);
}

.glb-partner-hint {
  margin: 0;
  color: rgba(245, 240, 230, 0.84);
  font-size: clamp(0.68rem, 2.7vw, 0.8rem);
  line-height: 1.45;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}

.glb-partner-compose-actions {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  flex: 0 0 auto;
  align-self: stretch;
  padding: 1px 0;
}

.glb-partner-reply-btn {
  min-width: 62px;
  height: 44px;
  border-radius: 10px;
}

body.glb-partner-turn .glb-conversation-hub {
  gap: 26px;
  padding: 6px 0 10px;
}

body.glb-partner-turn .glb-btn-side {
  width: var(--hub-side);
  height: var(--hub-side);
}

body.glb-partner-turn .glb-btn-center {
  width: var(--hub-center);
  height: var(--hub-center);
}

body.glb-partner-turn .glb-partner-hub-spin .glb-hub-label {
  color: #f5f0e6;
  font-size: clamp(0.96rem, 4vw, 1.14rem);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.96),
    0 2px 8px rgba(0, 0, 0, 0.88),
    0 4px 18px rgba(0, 0, 0, 0.72);
  margin-top: 4px;
}

body.glb-partner-turn .glb-partner-read-panel .glb-output {
  color: #fffaf2;
  font-size: clamp(2.25rem, 10.8vw, 4.15rem);
  font-weight: 900;
  line-height: 1.07;
  text-shadow:
    0 2px 4px rgba(0, 0, 0, 0.96),
    0 4px 14px rgba(0, 0, 0, 0.9),
    0 8px 28px rgba(0, 0, 0, 0.78);
}

body.glb-partner-turn .glb-partner-read-panel .glb-panel-head {
  display: flex;
}

.glb-partner-read-panel .glb-output.empty {
  color: rgba(245, 240, 230, 0.94);
  font-size: clamp(1.04rem, 4vw, 1.26rem);
  font-weight: 700;
}

.glb-speak-user-btn__label,
.glb-thanks-user-btn__label {
  font-size: 0.62rem;
  letter-spacing: 0.04em;
  line-height: 1;
}

@media (max-width: 390px) {
  body.glb-partner-turn {
    --hub-side: 94px;
    --hub-center: 120px;
  }

  body.glb-partner-turn .glb-conversation-hub {
    gap: 22px;
  }

  body.glb-partner-turn .glb-partner-reply {
    gap: 8px;
    padding: 11px 10px calc(10px + 6px) 12px;
  }

  .glb-partner-reply-btn {
    min-width: 58px;
    height: 42px;
    padding-inline: 8px;
  }
}

@media (max-height: 720px) {
  body.glb-partner-turn {
    --hub-side: 90px;
    --hub-center: 116px;
  }

  body.glb-partner-turn .glb-main {
    gap: 6px;
    grid-template-rows: auto minmax(96px, 1fr) auto auto auto;
  }

  body.glb-partner-turn #they-read-panel {
    min-height: 96px;
  }

  body.glb-partner-turn .glb-partner-reply {
    padding: 10px 10px calc(9px + 6px) 11px;
    max-height: 20vh;
  }

  .glb-partner-reply-input {
    min-height: 3.8em;
    max-height: 5.2em;
  }

  body.glb-partner-turn .glb-partner-read-panel .glb-output {
    font-size: clamp(2rem, 9.5vw, 3.35rem);
  }
}
