/* HERO ANIM */
    #gep-anim-contract-authoring-hero,
    #gep-anim-contract-authoring-hero * { box-sizing: border-box; margin: 0; padding: 0; }

    #gep-anim-contract-authoring-hero {
      --gep-ruby: #D42F5A;
      --gep-dark: #1B1B2F;
      --gep-green: #2ECB71;
      --gep-white: #FFFFFF;
      --gep-light-grey: #F5F6F8;
      --gep-text: #333333;
      --gep-muted: #888888;
      --gep-border: #E5E7EB;
      width: 500px;
      height: 360px;
      background: transparent;
      font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
      color: var(--gep-text);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    #gep-anim-contract-authoring-hero .win {
      width: 440px;
      background: var(--gep-white);
      border: 1px solid var(--gep-border);
      border-radius: 14px;
      overflow: hidden;
      box-shadow: none;
    }

    #gep-anim-contract-authoring-hero .bar {
      display: flex;
      align-items: center;
      gap: 7px;
      padding: 12px 16px;
      background: var(--gep-white);
      border-bottom: 1px solid var(--gep-border);
    }

    #gep-anim-contract-authoring-hero .dot {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: var(--gep-ruby);
    }

    #gep-anim-contract-authoring-hero .title {
      margin-left: 4px;
      font-size: 13px;
      font-weight: 600;
      color: var(--gep-dark);
    }

    #gep-anim-contract-authoring-hero .body {
      padding: 16px;
    }

    #gep-anim-contract-authoring-hero .draft-card {
      border: 1px solid var(--gep-border);
      border-radius: 8px;
      padding: 10px 12px;
      margin-bottom: 10px;
      opacity: 0;
      transform: translateY(6px);
      animation: gep-ca-hero-rise 8s ease-out 0.3s infinite;
      box-shadow: none;
    }

    #gep-anim-contract-authoring-hero .draft-top {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 4px;
    }

    #gep-anim-contract-authoring-hero .draft-label {
      font-size: 10px;
      font-weight: 600;
      color: var(--gep-muted);
      letter-spacing: 0.4px;
      text-transform: uppercase;
    }

    #gep-anim-contract-authoring-hero .draft-type {
      font-size: 9px;
      font-weight: 600;
      padding: 2px 7px;
      border-radius: 10px;
      background: rgba(212, 47, 90, 0.08);
      color: var(--gep-ruby);
    }

    #gep-anim-contract-authoring-hero .draft-name {
      font-size: 13px;
      font-weight: 600;
      color: var(--gep-dark);
      margin-bottom: 3px;
    }

    #gep-anim-contract-authoring-hero .draft-meta {
      font-size: 11px;
      color: var(--gep-muted);
    }

    #gep-anim-contract-authoring-hero .action-btn {
      display: inline-block;
      padding: 8px 16px;
      border-radius: 8px;
      background: var(--gep-ruby);
      color: var(--gep-white);
      font-size: 12px;
      font-weight: 600;
      margin-bottom: 10px;
      opacity: 0;
      animation: gep-ca-hero-btn 8s ease-in-out 1.0s infinite;
    }

    #gep-anim-contract-authoring-hero .clause-list {
      display: flex;
      flex-direction: column;
      gap: 6px;
      margin-bottom: 10px;
    }

    #gep-anim-contract-authoring-hero .clause {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 7px 10px;
      border: 1px solid var(--gep-border);
      border-radius: 6px;
      font-size: 12px;
      font-weight: 500;
      color: var(--gep-dark);
      opacity: 0;
      transform: translateX(-6px);
      box-shadow: none;
    }

    #gep-anim-contract-authoring-hero .cl1 { animation: gep-ca-hero-clause 8s ease-out 2.0s infinite; }
    #gep-anim-contract-authoring-hero .cl2 { animation: gep-ca-hero-clause 8s ease-out 2.3s infinite; }
    #gep-anim-contract-authoring-hero .cl3 { animation: gep-ca-hero-clause 8s ease-out 2.6s infinite; }

    #gep-anim-contract-authoring-hero .cl-check {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 18px;
      height: 18px;
      min-width: 18px;
      border-radius: 50%;
      background: var(--gep-green);
      color: var(--gep-white);
      font-size: 10px;
      font-weight: 700;
    }

    #gep-anim-contract-authoring-hero .cl-text {
      font-size: 12px;
    }

    #gep-anim-contract-authoring-hero .agent-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 5px 10px;
      border-radius: 12px;
      background: rgba(212, 47, 90, 0.07);
      font-size: 10px;
      font-weight: 600;
      color: var(--gep-ruby);
      opacity: 0;
      animation: gep-ca-hero-fade 8s ease-out 3.2s infinite;
    }
    #gep-anim-contract-authoring-hero .agent-badge p{ 
      font-size: 11px!important;
      font-weight: 600; line-height: 1.2;}
    #gep-anim-contract-authoring-hero .agent-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--gep-ruby);
      animation: gep-ca-hero-pulse 1.5s ease-in-out infinite;
    }

    @keyframes gep-ca-hero-rise {
      0%, 2% { opacity: 0; transform: translateY(6px); }
      8%, 88% { opacity: 1; transform: translateY(0); }
      95%, 100% { opacity: 0; transform: translateY(6px); }
    }

    @keyframes gep-ca-hero-btn {
      0%, 8% { opacity: 0; }
      14%, 20% { opacity: 1; filter: brightness(1); }
      22% { filter: brightness(0.85); transform: scale(0.97); }
      26%, 88% { opacity: 1; filter: brightness(1); transform: scale(1); }
      95%, 100% { opacity: 0; }
    }

    @keyframes gep-ca-hero-clause {
      0%, 22% { opacity: 0; transform: translateX(-6px); }
      30%, 88% { opacity: 1; transform: translateX(0); }
      95%, 100% { opacity: 0; transform: translateX(-6px); }
    }

    @keyframes gep-ca-hero-fade {
      0%, 35% { opacity: 0; }
      42%, 88% { opacity: 1; }
      95%, 100% { opacity: 0; }
    }

    @keyframes gep-ca-hero-pulse {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.5; transform: scale(1.3); }
    }
    /* SECTION 1 ANIM */
    
    #gep-anim-contract-authoring-sec,
    #gep-anim-contract-authoring-sec * { box-sizing: border-box; margin: 0; padding: 0; }

    #gep-anim-contract-authoring-sec {
      --gep-ruby: #D42F5A;
      --gep-dark: #1B1B2F;
      --gep-green: #2ECB71;
      --gep-white: #FFFFFF;
      --gep-light-grey: #F5F6F8;
      --gep-text: #333333;
      --gep-muted: #888888;
      --gep-border: #E5E7EB;
      width: 500px;
      height: 360px;
      background: transparent;
      font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
      color: var(--gep-text);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    #gep-anim-contract-authoring-sec .win {
      width: 440px;
      background: var(--gep-white);
      border: 1px solid var(--gep-border);
      border-radius: 14px;
      overflow: hidden;
      box-shadow: none;
    }

    #gep-anim-contract-authoring-sec .bar {
      display: flex;
      align-items: center;
      gap: 7px;
      padding: 12px 16px;
      background: var(--gep-white);
      border-bottom: 1px solid var(--gep-border);
    }

    #gep-anim-contract-authoring-sec .dot {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: var(--gep-ruby);
    }

    #gep-anim-contract-authoring-sec .title {
      margin-left: 4px;
      font-size: 13px;
      font-weight: 600;
      color: var(--gep-dark);
      flex: 1;
    }

    #gep-anim-contract-authoring-sec .ver-badge {
      font-size: 10px;
      font-weight: 600;
      padding: 2px 8px;
      border-radius: 10px;
      background: var(--gep-light-grey);
      color: var(--gep-muted);
      border: 1px solid var(--gep-border);
    }

    #gep-anim-contract-authoring-sec .body {
      padding: 16px;
    }

    #gep-anim-contract-authoring-sec .clause-block {
      border: 1px solid var(--gep-border);
      border-radius: 8px;
      padding: 12px;
      margin-bottom: 10px;
      opacity: 0;
      transform: translateY(6px);
      animation: gep-ca-sec-rise 7s ease-out 0.3s infinite;
      box-shadow: none;
    }

    #gep-anim-contract-authoring-sec .clause-label {
      font-size: 11px;
      font-weight: 600;
      color: var(--gep-dark);
      margin-bottom: 8px;
    }

    #gep-anim-contract-authoring-sec .clause-old {
      font-size: 12px;
      color: var(--gep-muted);
      margin-bottom: 4px;
      line-height: 1.5;
    }

    #gep-anim-contract-authoring-sec .strike {
      text-decoration: line-through;
      color: var(--gep-ruby);
    }

    #gep-anim-contract-authoring-sec .clause-new {
      font-size: 12px;
      color: var(--gep-text);
      margin-bottom: 6px;
      line-height: 1.5;
    }

    #gep-anim-contract-authoring-sec .inserted {
      background: rgba(46, 203, 113, 0.12);
      color: var(--gep-green);
      font-weight: 600;
      padding: 1px 4px;
      border-radius: 3px;
    }

    #gep-anim-contract-authoring-sec .clause-by {
      font-size: 10px;
      color: var(--gep-muted);
    }

    #gep-anim-contract-authoring-sec .action-row {
      display: flex;
      gap: 8px;
      margin-bottom: 12px;
      opacity: 0;
      animation: gep-ca-sec-actions 7s ease-out 1.2s infinite;
    }

    #gep-anim-contract-authoring-sec .action-accept,
    #gep-anim-contract-authoring-sec .action-reject,
    #gep-anim-contract-authoring-sec .action-counter {
      padding: 6px 14px;
      border-radius: 6px;
      font-size: 11px;
      font-weight: 600;
      border: 1px solid var(--gep-border);
      cursor: pointer;
    }

    #gep-anim-contract-authoring-sec .action-accept {
      background: var(--gep-green);
      color: var(--gep-white);
      border-color: var(--gep-green);
      animation: gep-ca-sec-click 7s ease-in-out 2.2s infinite;
    }

    #gep-anim-contract-authoring-sec .action-reject {
      background: var(--gep-white);
      color: var(--gep-muted);
    }

    #gep-anim-contract-authoring-sec .action-counter {
      background: var(--gep-white);
      color: var(--gep-muted);
    }

    #gep-anim-contract-authoring-sec .agent-confirm {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 10px 12px;
      border: 1px solid var(--gep-border);
      border-radius: 8px;
      background: var(--gep-light-grey);
      opacity: 0;
      transform: translateY(6px);
      animation: gep-ca-sec-rise 7s ease-out 2.8s infinite;
      box-shadow: none;
    }

    #gep-anim-contract-authoring-sec .agent-check {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 24px;
      height: 24px;
      min-width: 24px;
      border-radius: 50%;
      background: var(--gep-green);
      color: var(--gep-white);
      font-size: 13px;
      font-weight: 700;
    }

    #gep-anim-contract-authoring-sec .agent-text {
      display: flex;
      flex-direction: column;
    }

    #gep-anim-contract-authoring-sec .agent-text strong {
      font-size: 12px!important;
      color: var(--gep-dark);
    }

    #gep-anim-contract-authoring-sec .agent-text span {
      font-size: 11px!important;
      color: var(--gep-muted);
    }

    @keyframes gep-ca-sec-rise {
      0%, 2% { opacity: 0; transform: translateY(6px); }
      10%, 84% { opacity: 1; transform: translateY(0); }
      92%, 100% { opacity: 0; transform: translateY(6px); }
    }

    @keyframes gep-ca-sec-actions {
      0%, 12% { opacity: 0; }
      20%, 84% { opacity: 1; }
      92%, 100% { opacity: 0; }
    }

    @keyframes gep-ca-sec-click {
      0%, 28% { transform: scale(1); filter: brightness(1); }
      32% { transform: scale(0.94); filter: brightness(0.85); }
      36%, 84% { transform: scale(1); filter: brightness(1); }
      92%, 100% { transform: scale(1); }
    }
