/* v119 — private identity and a native-feeling shared planning surface. */
@media (max-width: 760px) {
  #coupleView {
    --together-ink: #0b2f26;
    --together-muted: #687a74;
    --together-line: #dce8e3;
    --together-green: #087a5b;
    --together-mint: #eaf6f1;
    background: linear-gradient(180deg, #fbfdfc 0%, #f3f7f5 100%) !important;
  }

  #coupleView .couple-layout {
    width: 100%;
    max-width: 480px;
    gap: 12px !important;
    padding: 8px 14px calc(104px + env(safe-area-inset-bottom)) !important;
  }

  #coupleView .screen-page-header {
    min-height: 54px;
    align-items: center;
    padding: 0 2px !important;
  }

  #coupleView .screen-page-header small {
    display: block !important;
    color: var(--together-green) !important;
    font-size: 10px !important;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
  }

  #coupleView .screen-page-header h2 {
    margin-top: 2px !important;
    font: 760 34px/1 -apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif !important;
    letter-spacing: -.04em !important;
  }

  #coupleView .header-add-button {
    width: 44px !important;
    height: 44px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: var(--together-green) !important;
    color: white !important;
    font-size: 24px !important;
    box-shadow: 0 8px 20px rgba(8,122,91,.18) !important;
  }

  #coupleView .couple-hero {
    border: 0 !important;
    border-radius: 22px !important;
    background: linear-gradient(145deg, #063e31 0%, #087a5b 100%) !important;
    color: white !important;
    padding: 20px !important;
    box-shadow: 0 12px 30px rgba(6,62,49,.15) !important;
  }

  #coupleView .couple-hero-copy small,
  #coupleView .couple-hero-copy h3,
  #coupleView .couple-hero-copy p,
  #coupleView .couple-connected-head h3 {
    color: white !important;
  }

  #coupleView .couple-hero-copy small { opacity: .72; }
  #coupleView .couple-hero-copy h3 {
    margin: 7px 0 6px !important;
    font-size: 25px !important;
    line-height: 1.08 !important;
  }
  #coupleView .couple-hero-copy p { opacity: .78; font-size: 13px !important; }
  #coupleView .couple-people span { border-color: #087a5b !important; background: #f4d8ad !important; color: #174b3d !important; }

  #coupleView .couple-hero-stats {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 7px;
    margin-top: 17px;
  }
  #coupleView .couple-hero-stats span {
    min-width: 0;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 13px;
    background: rgba(255,255,255,.09);
    padding: 10px 8px;
  }
  #coupleView .couple-hero-stats strong { color: white !important; font-size: 16px !important; }
  #coupleView .couple-hero-stats small { color: rgba(255,255,255,.68) !important; font-size: 8px !important; }

  #coupleView .couple-onboarding { margin-top: 18px; }
  #coupleView .couple-onboarding-step > span { background: rgba(255,255,255,.16); }
  #coupleView .couple-onboarding-step strong,
  #coupleView .couple-onboarding > label { color: white !important; }
  #coupleView .couple-onboarding-step small,
  #coupleView .couple-onboarding > p { color: rgba(255,255,255,.7) !important; }
  #coupleView .couple-onboarding-form input { border: 0 !important; }
  #coupleView .couple-onboarding-form button,
  #coupleView .couple-copy-invite { background: #dff6ec !important; color: #06533e !important; }

  #coupleView .couple-plan-panel,
  #coupleView .couple-side > .panel {
    border: 1px solid var(--together-line) !important;
    border-radius: 20px !important;
    background: #fff !important;
    padding: 16px !important;
    box-shadow: 0 8px 24px rgba(22,59,48,.05) !important;
  }

  #coupleView .couple-plan-panel .section-head {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
  }
  #coupleView .couple-plan-panel .section-head > div:first-child { min-width: 0; }
  #coupleView .couple-plan-panel .section-head h3,
  #coupleView .couple-side .section-head h3 {
    color: var(--together-ink) !important;
    font-size: 19px !important;
    font-weight: 750 !important;
    letter-spacing: -.02em;
  }
  #coupleView .couple-plan-panel .section-head p { color: var(--together-muted) !important; font-size: 11px !important; }
  #openCoupleAdd {
    min-height: 40px !important;
    border-radius: 12px !important;
    padding: 0 12px !important;
    white-space: nowrap;
    font-size: 11px !important;
  }

  #coupleView .couple-shared-timeline { gap: 8px; margin-top: 14px; }
  #coupleView .couple-shared-block {
    position: relative;
    min-height: 76px;
    border: 1px solid var(--together-line) !important;
    border-radius: 16px !important;
    background: #fbfdfc !important;
    overflow: hidden;
  }
  #coupleView .couple-shared-block.live { border-color: #63b99f !important; box-shadow: inset 3px 0 #087a5b; }
  #coupleView .couple-block-main {
    grid-template-columns: 58px 34px minmax(0,1fr) auto !important;
    gap: 9px !important;
    min-height: 76px;
    padding: 10px 44px 10px 10px !important;
  }
  #coupleView .couple-block-time {
    display: grid;
    place-items: center;
    align-self: stretch;
    border-radius: 12px;
    background: #eef6f2;
    color: #075e47 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
  }
  #coupleView .couple-block-time small { display: none !important; }
  #coupleView .couple-block-icon {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 11px;
    background: var(--block-bg);
    color: var(--block-color);
  }
  #coupleView .couple-block-copy strong {
    color: var(--together-ink) !important;
    font-size: 14px !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  #coupleView .couple-block-copy small { color: var(--together-muted) !important; font-size: 9px !important; }
  #coupleView .couple-block-copy small + small { display: none; }
  #coupleView .couple-block-main em {
    border-radius: 999px;
    background: #edf7f3;
    color: #087a5b !important;
    padding: 5px 7px;
    font-size: 8px !important;
    font-weight: 800;
    text-transform: uppercase;
  }
  #coupleView .couple-block-actions { top: 21px !important; right: 10px !important; width: 30px; height: 34px; }
  #coupleView .couple-unshare { display: none !important; }
  #coupleView .couple-empty { border-color: var(--together-line) !important; background: #fbfdfc !important; }

  #coupleView .couple-request-list { gap: 7px; }
  #coupleView .couple-request {
    min-height: 52px;
    border: 0 !important;
    border-bottom: 1px solid #edf2ef !important;
    border-radius: 0 !important;
    padding: 6px 0 !important;
    background: transparent !important;
  }
  #coupleView .couple-request:last-child { border-bottom: 0 !important; }
  #coupleView .mini-add { margin-top: 10px; border: 1px solid var(--together-line); border-radius: 14px; overflow: hidden; }
  #coupleView .mini-add input { min-width: 0; font-size: 16px; }
  #coupleView .mini-add button { width: 52px; border-radius: 11px !important; font-size: 0; }
  #coupleView .mini-add button::after { content: "+"; font-size: 25px; }

  .couple-sheet-backdrop {
    position: fixed;
    inset: 0;
    z-index: 119;
    background: rgba(4,24,18,.48);
    backdrop-filter: blur(4px);
  }
  .couple-sheet-backdrop[hidden] { display: none !important; }
  #coupleAddPanel {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 120 !important;
    width: 100% !important;
    max-height: min(78dvh, 690px) !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 26px 26px 0 0 !important;
    background: #fff !important;
    padding: 8px 18px calc(18px + env(safe-area-inset-bottom)) !important;
    overflow-y: auto !important;
    box-shadow: 0 -18px 70px rgba(4,31,23,.25) !important;
  }
  #coupleAddPanel.is-collapsed { display: none !important; }
  .couple-sheet-handle { width: 38px; height: 5px; margin: 0 auto 12px; border-radius: 999px; background: #d6dfdb; }
  #coupleAddPanel .section-head { align-items: start !important; margin-bottom: 14px; }
  #coupleAddPanel .section-head small { color: #087a5b; font-size: 9px; font-weight: 850; letter-spacing: .12em; }
  #coupleAddPanel .section-head h3 { margin: 3px 0 2px; color: var(--together-ink); font-size: 23px !important; }
  #coupleAddPanel .section-head p { margin: 0; color: var(--together-muted); font-size: 11px; }
  #coupleAddPanel .icon-close { width: 40px; height: 40px; border: 0; border-radius: 50%; background: #f0f4f2; }
  #coupleAddPanel .couple-add-form { display: grid; gap: 12px; }
  #coupleAddPanel .couple-add-form > label,
  #coupleAddPanel .editor-two label { display: grid; gap: 6px; color: #36564d; font-size: 11px; font-weight: 800; }
  #coupleAddPanel input {
    width: 100%; min-width: 0; min-height: 50px; border: 1px solid #cadbd4; border-radius: 14px;
    background: #fbfdfc; color: #102d25; padding: 0 13px; font-size: 16px;
  }
  #coupleAddPanel .editor-two { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .couple-duration-presets { display: grid; grid-template-columns: repeat(4,1fr); gap: 7px; }
  .couple-duration-presets button {
    min-height: 38px; border: 1px solid #cadbd4; border-radius: 11px; background: #f7faf8; color: #31584c; font-size: 11px; font-weight: 750;
  }
  .couple-duration-presets button.active { border-color: #087a5b; background: #e7f5ef; color: #087a5b; }
  #addCoupleBlock { min-height: 52px; border-radius: 15px !important; font-size: 15px !important; }
  .couple-edit-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .couple-edit-actions[hidden] { display: none !important; }
  .couple-edit-actions button { min-height: 44px; border: 1px solid #d5e2dc; border-radius: 13px; background: #fff; color: #185342; font-size: 11px; font-weight: 780; }
  .couple-edit-actions button.danger { color: #a43b3b; }
  body.couple-sheet-open { overflow: hidden !important; }
  body.couple-sheet-open .mobile-bottom-nav { pointer-events: none; }
}

@media (min-width: 761px) {
  .couple-sheet-backdrop { position: fixed; inset: 0; z-index: 119; background: rgba(4,24,18,.4); }
  .couple-sheet-backdrop[hidden] { display: none !important; }
  #coupleAddPanel { position: fixed; z-index: 120; left: 50%; top: 50%; width: min(520px, calc(100vw - 40px)); transform: translate(-50%,-50%); border-radius: 24px; background: white; padding: 22px; }
  #coupleAddPanel.is-collapsed { display: none !important; }
  .couple-sheet-handle { display: none; }
}
